astro 5.16.0 → 5.16.2

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 (105) hide show
  1. package/astro-jsx.d.ts +11 -0
  2. package/dist/assets/fonts/definitions.d.ts +0 -18
  3. package/dist/assets/fonts/infra/build-remote-font-provider-mod-resolver.d.ts +2 -0
  4. package/dist/assets/fonts/infra/build-remote-font-provider-mod-resolver.js +10 -0
  5. package/dist/assets/fonts/infra/{url-proxy-hash-resolver.d.ts → build-url-proxy-hash-resolver.d.ts} +0 -3
  6. package/dist/assets/fonts/infra/build-url-proxy-hash-resolver.js +13 -0
  7. package/dist/assets/fonts/infra/{url-resolver.d.ts → build-url-resolver.d.ts} +0 -4
  8. package/dist/assets/fonts/infra/{url-resolver.js → build-url-resolver.js} +1 -22
  9. package/dist/assets/fonts/infra/{font-fetcher.d.ts → cached-font-fetcher.d.ts} +2 -3
  10. package/dist/assets/fonts/infra/{font-fetcher.js → cached-font-fetcher.js} +8 -6
  11. package/dist/assets/fonts/infra/{remote-font-provider-mod-resolver.d.ts → dev-remote-font-provider-mod-resolver.d.ts} +0 -1
  12. package/dist/assets/fonts/infra/{remote-font-provider-mod-resolver.js → dev-remote-font-provider-mod-resolver.js} +0 -8
  13. package/dist/assets/fonts/infra/dev-url-proxy-hash-resolver.d.ts +5 -0
  14. package/dist/assets/fonts/infra/{url-proxy-hash-resolver.js → dev-url-proxy-hash-resolver.js} +3 -14
  15. package/dist/assets/fonts/infra/dev-url-resolver.d.ts +5 -0
  16. package/dist/assets/fonts/infra/dev-url-resolver.js +25 -0
  17. package/dist/assets/fonts/infra/font-type-extractor.d.ts +2 -4
  18. package/dist/assets/fonts/infra/font-type-extractor.js +9 -8
  19. package/dist/assets/fonts/infra/fontace-font-file-reader.d.ts +2 -0
  20. package/dist/assets/fonts/infra/fontace-font-file-reader.js +27 -0
  21. package/dist/assets/fonts/infra/remote-font-provider-resolver.d.ts +2 -3
  22. package/dist/assets/fonts/infra/remote-font-provider-resolver.js +10 -12
  23. package/dist/assets/fonts/infra/url-proxy-content-resolver.d.ts +2 -4
  24. package/dist/assets/fonts/infra/url-proxy-content-resolver.js +3 -8
  25. package/dist/assets/fonts/infra/xxhash-hasher.d.ts +2 -0
  26. package/dist/assets/fonts/infra/{hasher.js → xxhash-hasher.js} +2 -2
  27. package/dist/assets/fonts/vite-plugin-fonts.js +23 -31
  28. package/dist/assets/utils/remotePattern.d.ts +1 -3
  29. package/dist/cli/create-key/infra/crypto-key-generator.d.ts +3 -1
  30. package/dist/cli/create-key/infra/crypto-key-generator.js +7 -9
  31. package/dist/cli/definitions.d.ts +9 -8
  32. package/dist/cli/docs/infra/process-cloud-ide-provider.d.ts +4 -1
  33. package/dist/cli/docs/infra/process-cloud-ide-provider.js +3 -7
  34. package/dist/cli/index.js +35 -36
  35. package/dist/cli/info/core/get-package-manager.js +14 -15
  36. package/dist/cli/info/definitions.d.ts +3 -3
  37. package/dist/cli/info/infra/bun-package-manager.d.ts +4 -1
  38. package/dist/cli/info/infra/bun-package-manager.js +6 -10
  39. package/dist/cli/info/infra/cli-astro-config-resolver.d.ts +7 -4
  40. package/dist/cli/info/infra/cli-astro-config-resolver.js +32 -29
  41. package/dist/cli/info/infra/cli-clipboard.d.ts +9 -7
  42. package/dist/cli/info/infra/cli-clipboard.js +48 -37
  43. package/dist/cli/info/infra/cli-debug-info-provider.d.ts +11 -8
  44. package/dist/cli/info/infra/cli-debug-info-provider.js +46 -36
  45. package/dist/cli/info/infra/dev-debug-info-provider.d.ts +12 -9
  46. package/dist/cli/info/infra/dev-debug-info-provider.js +33 -23
  47. package/dist/cli/info/infra/noop-package-manager.d.ts +4 -1
  48. package/dist/cli/info/infra/noop-package-manager.js +6 -10
  49. package/dist/cli/info/infra/npm-package-manager.d.ts +7 -4
  50. package/dist/cli/info/infra/npm-package-manager.js +25 -25
  51. package/dist/cli/info/infra/pnpm-package-manager.d.ts +7 -4
  52. package/dist/cli/info/infra/pnpm-package-manager.js +24 -24
  53. package/dist/cli/info/infra/process-node-version-provider.d.ts +3 -1
  54. package/dist/cli/info/infra/process-node-version-provider.js +3 -7
  55. package/dist/cli/info/infra/process-package-manager-user-agent-provider.d.ts +3 -1
  56. package/dist/cli/info/infra/process-package-manager-user-agent-provider.js +4 -7
  57. package/dist/cli/info/infra/prompts-prompt.d.ts +9 -4
  58. package/dist/cli/info/infra/prompts-prompt.js +20 -15
  59. package/dist/cli/info/infra/styled-debug-info-formatter.d.ts +7 -4
  60. package/dist/cli/info/infra/styled-debug-info-formatter.js +23 -19
  61. package/dist/cli/info/infra/yarn-package-manager.d.ts +7 -4
  62. package/dist/cli/info/infra/yarn-package-manager.js +21 -21
  63. package/dist/cli/infra/build-time-astro-version-provider.d.ts +3 -1
  64. package/dist/cli/infra/build-time-astro-version-provider.js +4 -8
  65. package/dist/cli/infra/cli-command-runner.d.ts +7 -4
  66. package/dist/cli/infra/cli-command-runner.js +14 -10
  67. package/dist/cli/infra/logger-help-display.d.ts +11 -7
  68. package/dist/cli/infra/logger-help-display.js +62 -50
  69. package/dist/cli/infra/passthrough-text-styler.d.ts +8 -1
  70. package/dist/cli/infra/passthrough-text-styler.js +20 -10
  71. package/dist/cli/infra/piccolore-text-styler.d.ts +1 -1
  72. package/dist/cli/infra/piccolore-text-styler.js +2 -4
  73. package/dist/cli/infra/process-operating-system-provider.d.ts +5 -1
  74. package/dist/cli/infra/process-operating-system-provider.js +8 -16
  75. package/dist/cli/infra/tinyexec-command-executor.d.ts +6 -2
  76. package/dist/cli/infra/tinyexec-command-executor.js +28 -30
  77. package/dist/content/content-layer.js +3 -3
  78. package/dist/content/utils.d.ts +10 -10
  79. package/dist/core/app/index.js +3 -1
  80. package/dist/core/config/schemas/base.d.ts +72 -72
  81. package/dist/core/config/schemas/relative.d.ts +98 -98
  82. package/dist/core/constants.js +1 -1
  83. package/dist/core/csp/config.d.ts +1 -1
  84. package/dist/core/dev/dev.js +1 -1
  85. package/dist/core/errors/errors.js +7 -7
  86. package/dist/core/messages.js +2 -2
  87. package/dist/core/sync/index.js +20 -1
  88. package/dist/env/schema.d.ts +44 -44
  89. package/dist/types/public/context.d.ts +10 -1
  90. package/dist/vite-plugin-astro/index.js +5 -1
  91. package/dist/vite-plugin-astro-server/plugin.js +16 -16
  92. package/package.json +7 -7
  93. package/dist/assets/fonts/infra/error-handler.d.ts +0 -2
  94. package/dist/assets/fonts/infra/error-handler.js +0 -41
  95. package/dist/assets/fonts/infra/font-file-reader.d.ts +0 -4
  96. package/dist/assets/fonts/infra/font-file-reader.js +0 -26
  97. package/dist/assets/fonts/infra/hasher.d.ts +0 -2
  98. /package/dist/assets/fonts/infra/{font-metrics-resolver.d.ts → capsize-font-metrics-resolver.d.ts} +0 -0
  99. /package/dist/assets/fonts/infra/{font-metrics-resolver.js → capsize-font-metrics-resolver.js} +0 -0
  100. /package/dist/assets/fonts/infra/{storage.d.ts → fs-storage.d.ts} +0 -0
  101. /package/dist/assets/fonts/infra/{storage.js → fs-storage.js} +0 -0
  102. /package/dist/assets/fonts/infra/{css-renderer.d.ts → minifiable-css-renderer.d.ts} +0 -0
  103. /package/dist/assets/fonts/infra/{css-renderer.js → minifiable-css-renderer.js} +0 -0
  104. /package/dist/assets/fonts/infra/{local-provider-url-resolver.d.ts → require-local-provider-url-resolver.d.ts} +0 -0
  105. /package/dist/assets/fonts/infra/{local-provider-url-resolver.js → require-local-provider-url-resolver.js} +0 -0
@@ -1,4 +1,4 @@
1
- const ASTRO_VERSION = "5.16.0";
1
+ const ASTRO_VERSION = "5.16.2";
2
2
  const REROUTE_DIRECTIVE_HEADER = "X-Astro-Reroute";
3
3
  const REWRITE_DIRECTIVE_HEADER_KEY = "X-Astro-Rewrite";
4
4
  const REWRITE_DIRECTIVE_HEADER_VALUE = "yes";
@@ -12,5 +12,5 @@ export type CspHash = z.infer<typeof cspHashSchema>;
12
12
  declare const ALLOWED_DIRECTIVES: readonly ["base-uri", "child-src", "connect-src", "default-src", "fenced-frame-src", "font-src", "form-action", "frame-ancestors", "frame-src", "img-src", "manifest-src", "media-src", "object-src", "referrer", "report-to", "report-uri", "require-trusted-types-for", "sandbox", "trusted-types", "upgrade-insecure-requests", "worker-src"];
13
13
  type AllowedDirectives = (typeof ALLOWED_DIRECTIVES)[number];
14
14
  export type CspDirective = `${AllowedDirectives}${string | undefined}`;
15
- export declare const allowedDirectivesSchema: z.ZodType<`referrer${string}` | `base-uri${string}` | `child-src${string}` | `connect-src${string}` | `default-src${string}` | `fenced-frame-src${string}` | `font-src${string}` | `form-action${string}` | `frame-ancestors${string}` | `frame-src${string}` | `img-src${string}` | `manifest-src${string}` | `media-src${string}` | `object-src${string}` | `report-to${string}` | `report-uri${string}` | `require-trusted-types-for${string}` | `sandbox${string}` | `trusted-types${string}` | `upgrade-insecure-requests${string}` | `worker-src${string}`, z.ZodTypeDef, `referrer${string}` | `base-uri${string}` | `child-src${string}` | `connect-src${string}` | `default-src${string}` | `fenced-frame-src${string}` | `font-src${string}` | `form-action${string}` | `frame-ancestors${string}` | `frame-src${string}` | `img-src${string}` | `manifest-src${string}` | `media-src${string}` | `object-src${string}` | `report-to${string}` | `report-uri${string}` | `require-trusted-types-for${string}` | `sandbox${string}` | `trusted-types${string}` | `upgrade-insecure-requests${string}` | `worker-src${string}`>;
15
+ export declare const allowedDirectivesSchema: z.ZodType<`base-uri${string}` | `child-src${string}` | `connect-src${string}` | `default-src${string}` | `fenced-frame-src${string}` | `font-src${string}` | `form-action${string}` | `frame-ancestors${string}` | `frame-src${string}` | `img-src${string}` | `manifest-src${string}` | `media-src${string}` | `object-src${string}` | `referrer${string}` | `report-to${string}` | `report-uri${string}` | `require-trusted-types-for${string}` | `sandbox${string}` | `trusted-types${string}` | `upgrade-insecure-requests${string}` | `worker-src${string}`, z.ZodTypeDef, `base-uri${string}` | `child-src${string}` | `connect-src${string}` | `default-src${string}` | `fenced-frame-src${string}` | `font-src${string}` | `form-action${string}` | `frame-ancestors${string}` | `frame-src${string}` | `img-src${string}` | `manifest-src${string}` | `media-src${string}` | `object-src${string}` | `referrer${string}` | `report-to${string}` | `report-uri${string}` | `require-trusted-types-for${string}` | `sandbox${string}` | `trusted-types${string}` | `upgrade-insecure-requests${string}` | `worker-src${string}`>;
16
16
  export {};
@@ -22,7 +22,7 @@ async function dev(inlineConfig) {
22
22
  await telemetry.record([]);
23
23
  const restart = await createContainerWithAutomaticRestart({ inlineConfig, fs });
24
24
  const logger = restart.container.logger;
25
- const currentVersion = "5.16.0";
25
+ const currentVersion = "5.16.2";
26
26
  const isPrerelease = currentVersion.includes("-");
27
27
  if (!isPrerelease) {
28
28
  try {
@@ -35,7 +35,7 @@ class AstroError extends Error {
35
35
  this.frame = codeFrame(source, location);
36
36
  }
37
37
  static is(err) {
38
- return err.type === "AstroError";
38
+ return err?.type === "AstroError";
39
39
  }
40
40
  }
41
41
  class CompilerError extends AstroError {
@@ -44,25 +44,25 @@ class CompilerError extends AstroError {
44
44
  super(props, options);
45
45
  }
46
46
  static is(err) {
47
- return err.type === "CompilerError";
47
+ return err?.type === "CompilerError";
48
48
  }
49
49
  }
50
50
  class CSSError extends AstroError {
51
51
  type = "CSSError";
52
52
  static is(err) {
53
- return err.type === "CSSError";
53
+ return err?.type === "CSSError";
54
54
  }
55
55
  }
56
56
  class MarkdownError extends AstroError {
57
57
  type = "MarkdownError";
58
58
  static is(err) {
59
- return err.type === "MarkdownError";
59
+ return err?.type === "MarkdownError";
60
60
  }
61
61
  }
62
62
  class InternalError extends AstroError {
63
63
  type = "InternalError";
64
64
  static is(err) {
65
- return err.type === "InternalError";
65
+ return err?.type === "InternalError";
66
66
  }
67
67
  }
68
68
  class AggregateError extends AstroError {
@@ -75,7 +75,7 @@ class AggregateError extends AstroError {
75
75
  this.errors = props.errors;
76
76
  }
77
77
  static is(err) {
78
- return err.type === "AggregateError";
78
+ return err?.type === "AggregateError";
79
79
  }
80
80
  }
81
81
  const astroConfigZodErrors = /* @__PURE__ */ new WeakSet();
@@ -98,7 +98,7 @@ class AstroUserError extends Error {
98
98
  this.hint = hint;
99
99
  }
100
100
  static is(err) {
101
- return err.type === "AstroUserError";
101
+ return err?.type === "AstroUserError";
102
102
  }
103
103
  }
104
104
  export {
@@ -38,7 +38,7 @@ function serverStart({
38
38
  host,
39
39
  base
40
40
  }) {
41
- const version = "5.16.0";
41
+ const version = "5.16.2";
42
42
  const localPrefix = `${dim("\u2503")} Local `;
43
43
  const networkPrefix = `${dim("\u2503")} Network `;
44
44
  const emptyPrefix = " ".repeat(11);
@@ -275,7 +275,7 @@ function printHelp({
275
275
  message.push(
276
276
  linebreak(),
277
277
  ` ${bgGreen(black(` ${commandName} `))} ${green(
278
- `v${"5.16.0"}`
278
+ `v${"5.16.2"}`
279
279
  )} ${headline}`
280
280
  );
281
281
  }
@@ -169,7 +169,26 @@ async function syncContentCollections(settings, {
169
169
  ssr: { external: [] },
170
170
  logLevel: "silent"
171
171
  },
172
- { settings, logger, mode, command: "build", fs, sync: true, routesList, manifest }
172
+ {
173
+ // Prevent mutation of specific properties by vite plugins during sync
174
+ settings: {
175
+ ...settings,
176
+ // Prevent mutation by vite plugins during sync
177
+ buildOutput: void 0,
178
+ // Sync causes font resources and style hashes to be duplicated
179
+ injectedCsp: {
180
+ fontResources: /* @__PURE__ */ new Set(),
181
+ styleHashes: []
182
+ }
183
+ },
184
+ logger,
185
+ mode,
186
+ command: "build",
187
+ fs,
188
+ sync: true,
189
+ routesList,
190
+ manifest
191
+ }
173
192
  )
174
193
  );
175
194
  const hotSend = tempViteServer.hot.send;
@@ -14,22 +14,22 @@ declare const StringSchema: z.ZodObject<{
14
14
  type: "string";
15
15
  length?: number | undefined;
16
16
  includes?: string | undefined;
17
- url?: boolean | undefined;
18
- default?: string | undefined;
19
17
  optional?: boolean | undefined;
18
+ url?: boolean | undefined;
20
19
  endsWith?: string | undefined;
21
20
  startsWith?: string | undefined;
21
+ default?: string | undefined;
22
22
  max?: number | undefined;
23
23
  min?: number | undefined;
24
24
  }, {
25
25
  type: "string";
26
26
  length?: number | undefined;
27
27
  includes?: string | undefined;
28
- url?: boolean | undefined;
29
- default?: string | undefined;
30
28
  optional?: boolean | undefined;
29
+ url?: boolean | undefined;
31
30
  endsWith?: string | undefined;
32
31
  startsWith?: string | undefined;
32
+ default?: string | undefined;
33
33
  max?: number | undefined;
34
34
  min?: number | undefined;
35
35
  }>;
@@ -45,8 +45,8 @@ declare const NumberSchema: z.ZodObject<{
45
45
  int: z.ZodOptional<z.ZodBoolean>;
46
46
  }, "strip", z.ZodTypeAny, {
47
47
  type: "number";
48
- default?: number | undefined;
49
48
  optional?: boolean | undefined;
49
+ default?: number | undefined;
50
50
  max?: number | undefined;
51
51
  min?: number | undefined;
52
52
  gt?: number | undefined;
@@ -54,8 +54,8 @@ declare const NumberSchema: z.ZodObject<{
54
54
  int?: boolean | undefined;
55
55
  }, {
56
56
  type: "number";
57
- default?: number | undefined;
58
57
  optional?: boolean | undefined;
58
+ default?: number | undefined;
59
59
  max?: number | undefined;
60
60
  min?: number | undefined;
61
61
  gt?: number | undefined;
@@ -69,12 +69,12 @@ declare const BooleanSchema: z.ZodObject<{
69
69
  default: z.ZodOptional<z.ZodBoolean>;
70
70
  }, "strip", z.ZodTypeAny, {
71
71
  type: "boolean";
72
- default?: boolean | undefined;
73
72
  optional?: boolean | undefined;
73
+ default?: boolean | undefined;
74
74
  }, {
75
75
  type: "boolean";
76
- default?: boolean | undefined;
77
76
  optional?: boolean | undefined;
77
+ default?: boolean | undefined;
78
78
  }>;
79
79
  declare const EnumSchema: z.ZodObject<{
80
80
  type: z.ZodLiteral<"enum">;
@@ -82,15 +82,15 @@ declare const EnumSchema: z.ZodObject<{
82
82
  optional: z.ZodOptional<z.ZodBoolean>;
83
83
  default: z.ZodOptional<z.ZodString>;
84
84
  }, "strip", z.ZodTypeAny, {
85
- values: string[];
86
85
  type: "enum";
87
- default?: string | undefined;
86
+ values: string[];
88
87
  optional?: boolean | undefined;
88
+ default?: string | undefined;
89
89
  }, {
90
- values: string[];
91
90
  type: "enum";
92
- default?: string | undefined;
91
+ values: string[];
93
92
  optional?: boolean | undefined;
93
+ default?: string | undefined;
94
94
  }>;
95
95
  export type EnumSchema = z.infer<typeof EnumSchema>;
96
96
  declare const EnvFieldType: z.ZodUnion<[z.ZodObject<{
@@ -108,22 +108,22 @@ declare const EnvFieldType: z.ZodUnion<[z.ZodObject<{
108
108
  type: "string";
109
109
  length?: number | undefined;
110
110
  includes?: string | undefined;
111
- url?: boolean | undefined;
112
- default?: string | undefined;
113
111
  optional?: boolean | undefined;
112
+ url?: boolean | undefined;
114
113
  endsWith?: string | undefined;
115
114
  startsWith?: string | undefined;
115
+ default?: string | undefined;
116
116
  max?: number | undefined;
117
117
  min?: number | undefined;
118
118
  }, {
119
119
  type: "string";
120
120
  length?: number | undefined;
121
121
  includes?: string | undefined;
122
- url?: boolean | undefined;
123
- default?: string | undefined;
124
122
  optional?: boolean | undefined;
123
+ url?: boolean | undefined;
125
124
  endsWith?: string | undefined;
126
125
  startsWith?: string | undefined;
126
+ default?: string | undefined;
127
127
  max?: number | undefined;
128
128
  min?: number | undefined;
129
129
  }>, z.ZodObject<{
@@ -137,8 +137,8 @@ declare const EnvFieldType: z.ZodUnion<[z.ZodObject<{
137
137
  int: z.ZodOptional<z.ZodBoolean>;
138
138
  }, "strip", z.ZodTypeAny, {
139
139
  type: "number";
140
- default?: number | undefined;
141
140
  optional?: boolean | undefined;
141
+ default?: number | undefined;
142
142
  max?: number | undefined;
143
143
  min?: number | undefined;
144
144
  gt?: number | undefined;
@@ -146,8 +146,8 @@ declare const EnvFieldType: z.ZodUnion<[z.ZodObject<{
146
146
  int?: boolean | undefined;
147
147
  }, {
148
148
  type: "number";
149
- default?: number | undefined;
150
149
  optional?: boolean | undefined;
150
+ default?: number | undefined;
151
151
  max?: number | undefined;
152
152
  min?: number | undefined;
153
153
  gt?: number | undefined;
@@ -159,37 +159,37 @@ declare const EnvFieldType: z.ZodUnion<[z.ZodObject<{
159
159
  default: z.ZodOptional<z.ZodBoolean>;
160
160
  }, "strip", z.ZodTypeAny, {
161
161
  type: "boolean";
162
- default?: boolean | undefined;
163
162
  optional?: boolean | undefined;
163
+ default?: boolean | undefined;
164
164
  }, {
165
165
  type: "boolean";
166
- default?: boolean | undefined;
167
166
  optional?: boolean | undefined;
167
+ default?: boolean | undefined;
168
168
  }>, z.ZodEffects<z.ZodObject<{
169
169
  type: z.ZodLiteral<"enum">;
170
170
  values: z.ZodArray<z.ZodEffects<z.ZodString, string, string>, "many">;
171
171
  optional: z.ZodOptional<z.ZodBoolean>;
172
172
  default: z.ZodOptional<z.ZodString>;
173
173
  }, "strip", z.ZodTypeAny, {
174
- values: string[];
175
174
  type: "enum";
176
- default?: string | undefined;
175
+ values: string[];
177
176
  optional?: boolean | undefined;
177
+ default?: string | undefined;
178
178
  }, {
179
- values: string[];
180
179
  type: "enum";
181
- default?: string | undefined;
180
+ values: string[];
182
181
  optional?: boolean | undefined;
182
+ default?: string | undefined;
183
183
  }>, {
184
- values: string[];
185
184
  type: "enum";
186
- default?: string | undefined;
185
+ values: string[];
187
186
  optional?: boolean | undefined;
187
+ default?: string | undefined;
188
188
  }, {
189
- values: string[];
190
189
  type: "enum";
191
- default?: string | undefined;
190
+ values: string[];
192
191
  optional?: boolean | undefined;
192
+ default?: string | undefined;
193
193
  }>]>;
194
194
  export type EnvFieldType = z.infer<typeof EnvFieldType>;
195
195
  declare const EnvFieldMetadata: z.ZodEffects<z.ZodType<{
@@ -280,22 +280,22 @@ export declare const EnvSchema: z.ZodRecord<z.ZodEffects<z.ZodEffects<z.ZodStrin
280
280
  type: "string";
281
281
  length?: number | undefined;
282
282
  includes?: string | undefined;
283
- url?: boolean | undefined;
284
- default?: string | undefined;
285
283
  optional?: boolean | undefined;
284
+ url?: boolean | undefined;
286
285
  endsWith?: string | undefined;
287
286
  startsWith?: string | undefined;
287
+ default?: string | undefined;
288
288
  max?: number | undefined;
289
289
  min?: number | undefined;
290
290
  }, {
291
291
  type: "string";
292
292
  length?: number | undefined;
293
293
  includes?: string | undefined;
294
- url?: boolean | undefined;
295
- default?: string | undefined;
296
294
  optional?: boolean | undefined;
295
+ url?: boolean | undefined;
297
296
  endsWith?: string | undefined;
298
297
  startsWith?: string | undefined;
298
+ default?: string | undefined;
299
299
  max?: number | undefined;
300
300
  min?: number | undefined;
301
301
  }>, z.ZodObject<{
@@ -309,8 +309,8 @@ export declare const EnvSchema: z.ZodRecord<z.ZodEffects<z.ZodEffects<z.ZodStrin
309
309
  int: z.ZodOptional<z.ZodBoolean>;
310
310
  }, "strip", z.ZodTypeAny, {
311
311
  type: "number";
312
- default?: number | undefined;
313
312
  optional?: boolean | undefined;
313
+ default?: number | undefined;
314
314
  max?: number | undefined;
315
315
  min?: number | undefined;
316
316
  gt?: number | undefined;
@@ -318,8 +318,8 @@ export declare const EnvSchema: z.ZodRecord<z.ZodEffects<z.ZodEffects<z.ZodStrin
318
318
  int?: boolean | undefined;
319
319
  }, {
320
320
  type: "number";
321
- default?: number | undefined;
322
321
  optional?: boolean | undefined;
322
+ default?: number | undefined;
323
323
  max?: number | undefined;
324
324
  min?: number | undefined;
325
325
  gt?: number | undefined;
@@ -331,37 +331,37 @@ export declare const EnvSchema: z.ZodRecord<z.ZodEffects<z.ZodEffects<z.ZodStrin
331
331
  default: z.ZodOptional<z.ZodBoolean>;
332
332
  }, "strip", z.ZodTypeAny, {
333
333
  type: "boolean";
334
- default?: boolean | undefined;
335
334
  optional?: boolean | undefined;
335
+ default?: boolean | undefined;
336
336
  }, {
337
337
  type: "boolean";
338
- default?: boolean | undefined;
339
338
  optional?: boolean | undefined;
339
+ default?: boolean | undefined;
340
340
  }>, z.ZodEffects<z.ZodObject<{
341
341
  type: z.ZodLiteral<"enum">;
342
342
  values: z.ZodArray<z.ZodEffects<z.ZodString, string, string>, "many">;
343
343
  optional: z.ZodOptional<z.ZodBoolean>;
344
344
  default: z.ZodOptional<z.ZodString>;
345
345
  }, "strip", z.ZodTypeAny, {
346
- values: string[];
347
346
  type: "enum";
348
- default?: string | undefined;
347
+ values: string[];
349
348
  optional?: boolean | undefined;
349
+ default?: string | undefined;
350
350
  }, {
351
- values: string[];
352
351
  type: "enum";
353
- default?: string | undefined;
352
+ values: string[];
354
353
  optional?: boolean | undefined;
354
+ default?: string | undefined;
355
355
  }>, {
356
- values: string[];
357
356
  type: "enum";
358
- default?: string | undefined;
357
+ values: string[];
359
358
  optional?: boolean | undefined;
359
+ default?: string | undefined;
360
360
  }, {
361
- values: string[];
362
361
  type: "enum";
363
- default?: string | undefined;
362
+ values: string[];
364
363
  optional?: boolean | undefined;
364
+ default?: string | undefined;
365
365
  }>]>>>;
366
366
  type Prettify<T> = {
367
367
  [K in keyof T]: T[K];
@@ -207,11 +207,20 @@ export interface AstroGlobalPartial {
207
207
  * ```
208
208
  *
209
209
  * [Astro reference](https://docs.astro.build/en/reference/api-reference/#astroglob)
210
- * @deprecated Astro.glob is deprecated and will be removed in the next major version of Astro. Use `import.meta.glob` instead: https://vitejs.dev/guide/features.html#glob-import
210
+ * @deprecated `Astro.glob` is deprecated and will be removed in the next major version of Astro. Use `import.meta.glob` instead: https://vitejs.dev/guide/features.html#glob-import
211
211
  */
212
212
  glob(globStr: `${any}.astro`): Promise<AstroInstance[]>;
213
+ /**
214
+ * @deprecated `Astro.glob` is deprecated and will be removed in the next major version of Astro. Use `import.meta.glob` instead: https://vitejs.dev/guide/features.html#glob-import
215
+ */
213
216
  glob<T extends Record<string, any>>(globStr: `${any}${MarkdownFileExtension}`): Promise<MarkdownInstance<T>[]>;
217
+ /**
218
+ * @deprecated `Astro.glob` is deprecated and will be removed in the next major version of Astro. Use `import.meta.glob` instead: https://vitejs.dev/guide/features.html#glob-import
219
+ */
214
220
  glob<T extends Record<string, any>>(globStr: `${any}.mdx`): Promise<MDXInstance<T>[]>;
221
+ /**
222
+ * @deprecated `Astro.glob` is deprecated and will be removed in the next major version of Astro. Use `import.meta.glob` instead: https://vitejs.dev/guide/features.html#glob-import
223
+ */
215
224
  glob<T extends Record<string, any>>(globStr: string): Promise<T[]>;
216
225
  /**
217
226
  * Returns a [URL](https://developer.mozilla.org/en-US/docs/Web/API/URL) object built from the [site](https://docs.astro.build/en/reference/configuration-reference/#site) config option
@@ -169,7 +169,11 @@ File: ${id}`
169
169
  return;
170
170
  }
171
171
  const filename = normalizePath(parsedId.filename);
172
- if (!options?.ssr) {
172
+ if (!options?.ssr && // Workaround to allow tests run with Vitest in a “client” environment to still render
173
+ // Astro components. See https://github.com/withastro/astro/issues/14883
174
+ // TODO: In a future major we should remove this and require people test Astro rendering in
175
+ // an SSR test environment, which more closely matches the real-world Vite environment.
176
+ !process.env.VITEST) {
173
177
  return {
174
178
  code: `export default import.meta.env.DEV
175
179
  ? () => {
@@ -6,14 +6,14 @@ import { IncomingMessage } from "node:http";
6
6
  import { fileURLToPath } from "node:url";
7
7
  import { normalizePath } from "vite";
8
8
  import { getPackageManager } from "../cli/info/core/get-package-manager.js";
9
- import { createDevDebugInfoProvider } from "../cli/info/infra/dev-debug-info-provider.js";
10
- import { createProcessNodeVersionProvider } from "../cli/info/infra/process-node-version-provider.js";
11
- import { createProcessPackageManagerUserAgentProvider } from "../cli/info/infra/process-package-manager-user-agent-provider.js";
12
- import { createStyledDebugInfoFormatter } from "../cli/info/infra/styled-debug-info-formatter.js";
13
- import { createBuildTimeAstroVersionProvider } from "../cli/infra/build-time-astro-version-provider.js";
14
- import { createPassthroughTextStyler } from "../cli/infra/passthrough-text-styler.js";
15
- import { createProcessOperatingSystemProvider } from "../cli/infra/process-operating-system-provider.js";
16
- import { createTinyexecCommandExecutor } from "../cli/infra/tinyexec-command-executor.js";
9
+ import { DevDebugInfoProvider } from "../cli/info/infra/dev-debug-info-provider.js";
10
+ import { ProcessNodeVersionProvider } from "../cli/info/infra/process-node-version-provider.js";
11
+ import { ProcessPackageManagerUserAgentProvider } from "../cli/info/infra/process-package-manager-user-agent-provider.js";
12
+ import { StyledDebugInfoFormatter } from "../cli/info/infra/styled-debug-info-formatter.js";
13
+ import { BuildTimeAstroVersionProvider } from "../cli/infra/build-time-astro-version-provider.js";
14
+ import { PassthroughTextStyler } from "../cli/infra/passthrough-text-styler.js";
15
+ import { ProcessOperatingSystemProvider } from "../cli/infra/process-operating-system-provider.js";
16
+ import { TinyexecCommandExecutor } from "../cli/infra/tinyexec-command-executor.js";
17
17
  import {
18
18
  getAlgorithm,
19
19
  getDirectives,
@@ -64,18 +64,18 @@ function createVitePluginAstroServer({
64
64
  settings,
65
65
  async getDebugInfo() {
66
66
  if (!debugInfo) {
67
- const debugInfoProvider = createDevDebugInfoProvider({
67
+ const debugInfoProvider = new DevDebugInfoProvider({
68
68
  config: settings.config,
69
- astroVersionProvider: createBuildTimeAstroVersionProvider(),
70
- operatingSystemProvider: createProcessOperatingSystemProvider(),
69
+ astroVersionProvider: new BuildTimeAstroVersionProvider(),
70
+ operatingSystemProvider: new ProcessOperatingSystemProvider(),
71
71
  packageManager: await getPackageManager({
72
- packageManagerUserAgentProvider: createProcessPackageManagerUserAgentProvider(),
73
- commandExecutor: createTinyexecCommandExecutor()
72
+ packageManagerUserAgentProvider: new ProcessPackageManagerUserAgentProvider(),
73
+ commandExecutor: new TinyexecCommandExecutor()
74
74
  }),
75
- nodeVersionProvider: createProcessNodeVersionProvider()
75
+ nodeVersionProvider: new ProcessNodeVersionProvider()
76
76
  });
77
- const debugInfoFormatter = createStyledDebugInfoFormatter({
78
- textStyler: createPassthroughTextStyler()
77
+ const debugInfoFormatter = new StyledDebugInfoFormatter({
78
+ textStyler: new PassthroughTextStyler()
79
79
  });
80
80
  debugInfo = debugInfoFormatter.format(await debugInfoProvider.get());
81
81
  }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "astro",
3
- "version": "5.16.0",
3
+ "version": "5.16.2",
4
4
  "description": "Astro is a modern site builder with web best practices, performance, and DX front-of-mind.",
5
5
  "type": "module",
6
6
  "author": "withastro",
@@ -136,7 +136,7 @@
136
136
  "rehype": "^13.0.2",
137
137
  "semver": "^7.7.3",
138
138
  "shiki": "^3.15.0",
139
- "smol-toml": "^1.5.0",
139
+ "smol-toml": "^1.5.2",
140
140
  "svgo": "^4.0.0",
141
141
  "tinyexec": "^1.0.2",
142
142
  "tinyglobby": "^0.2.15",
@@ -144,7 +144,7 @@
144
144
  "ultrahtml": "^1.6.0",
145
145
  "unifont": "~0.6.0",
146
146
  "unist-util-visit": "^5.0.0",
147
- "unstorage": "^1.17.2",
147
+ "unstorage": "^1.17.3",
148
148
  "vfile": "^6.0.3",
149
149
  "vite": "^6.4.1",
150
150
  "vitefu": "^1.1.1",
@@ -152,7 +152,7 @@
152
152
  "yargs-parser": "^21.1.1",
153
153
  "yocto-spinner": "^0.2.3",
154
154
  "zod": "^3.25.76",
155
- "zod-to-json-schema": "^3.24.6",
155
+ "zod-to-json-schema": "^3.25.0",
156
156
  "zod-to-ts": "^1.2.0",
157
157
  "@astrojs/markdown-remark": "6.3.9",
158
158
  "@astrojs/internal-helpers": "0.7.5",
@@ -189,13 +189,13 @@
189
189
  "rehype-slug": "^6.0.0",
190
190
  "rehype-toc": "^3.0.2",
191
191
  "remark-code-titles": "^0.1.2",
192
- "rollup": "^4.53.2",
193
- "sass": "^1.94.0",
192
+ "rollup": "^4.53.3",
193
+ "sass": "^1.94.2",
194
194
  "typescript": "^5.9.3",
195
195
  "undici": "^6.22.0",
196
196
  "unified": "^11.0.5",
197
197
  "vitest": "^3.2.4",
198
- "@astrojs/check": "0.9.5",
198
+ "@astrojs/check": "0.9.6",
199
199
  "astro-scripts": "0.0.14"
200
200
  },
201
201
  "engines": {
@@ -1,2 +0,0 @@
1
- import type { ErrorHandler } from '../definitions.js';
2
- export declare function createAstroErrorHandler(): ErrorHandler;
@@ -1,41 +0,0 @@
1
- import { AstroError, AstroErrorData } from "../../../core/errors/index.js";
2
- function getProps(input) {
3
- if (input.type === "cannot-load-font-provider") {
4
- return {
5
- ...AstroErrorData.CannotLoadFontProvider,
6
- message: AstroErrorData.CannotLoadFontProvider.message(input.data.entrypoint)
7
- };
8
- } else if (input.type === "unknown-fs-error") {
9
- return AstroErrorData.UnknownFilesystemError;
10
- } else if (input.type === "cannot-fetch-font-file") {
11
- return {
12
- ...AstroErrorData.CannotFetchFontFile,
13
- message: AstroErrorData.CannotFetchFontFile.message(input.data.url)
14
- };
15
- } else if (input.type === "cannot-extract-font-type") {
16
- return {
17
- ...AstroErrorData.CannotExtractFontType,
18
- message: AstroErrorData.CannotExtractFontType.message(input.data.url)
19
- };
20
- } else if (input.type === "cannot-extract-data") {
21
- return {
22
- ...AstroErrorData.CannotDetermineWeightAndStyleFromFontFile,
23
- message: AstroErrorData.CannotDetermineWeightAndStyleFromFontFile.message(
24
- input.data.family,
25
- input.data.url
26
- )
27
- };
28
- }
29
- input;
30
- return AstroErrorData.UnknownError;
31
- }
32
- function createAstroErrorHandler() {
33
- return {
34
- handle(input) {
35
- return new AstroError(getProps(input), { cause: input.cause });
36
- }
37
- };
38
- }
39
- export {
40
- createAstroErrorHandler
41
- };
@@ -1,4 +0,0 @@
1
- import type { ErrorHandler, FontFileReader } from '../definitions.js';
2
- export declare function createFontaceFontFileReader({ errorHandler, }: {
3
- errorHandler: ErrorHandler;
4
- }): FontFileReader;
@@ -1,26 +0,0 @@
1
- import { readFileSync } from "node:fs";
2
- import { fontace } from "fontace";
3
- function createFontaceFontFileReader({
4
- errorHandler
5
- }) {
6
- return {
7
- extract({ family, url }) {
8
- try {
9
- const data = fontace(readFileSync(url));
10
- return {
11
- weight: data.weight,
12
- style: data.style
13
- };
14
- } catch (cause) {
15
- throw errorHandler.handle({
16
- type: "cannot-extract-data",
17
- data: { family, url },
18
- cause
19
- });
20
- }
21
- }
22
- };
23
- }
24
- export {
25
- createFontaceFontFileReader
26
- };
@@ -1,2 +0,0 @@
1
- import type { Hasher } from '../definitions.js';
2
- export declare function createXxHasher(): Promise<Hasher>;