withastro/astro · warning
The adapter ${adapterName} provides experimental support for
Error message
The adapter ${adapterName} provides experimental support for "${featureName}". You may experience issues or breaking changes until this feature is fully supported by the adapter. What it means
Same adapter feature-validation path as the deprecated case, but for support kind EXPERIMENTAL: Astro warns (domain 'config') that the adapter provides experimental support for the feature, so you may hit issues or breaking changes until support is fully stabilized.
Source
Thrown at packages/astro/src/integrations/features-validation.ts:159
adapterName: string,
logger: AstroLogger,
featureName: string,
supportKind: AdapterSupport,
adapterMessage?: string,
suppress?: 'all' | 'default',
) {
if (!suppress) {
switch (supportKind) {
case AdapterFeatureStability.STABLE:
break;
case AdapterFeatureStability.DEPRECATED:
logger.warn(
'config',
`The adapter ${adapterName} has deprecated its support for "${featureName}", and future compatibility is not guaranteed. The adapter may completely remove support for this feature without warning.`,
);
break;
case AdapterFeatureStability.EXPERIMENTAL:
logger.warn(
'config',
`The adapter ${adapterName} provides experimental support for "${featureName}". You may experience issues or breaking changes until this feature is fully supported by the adapter.`,
);
break;
case AdapterFeatureStability.LIMITED:
logger.warn(
'config',
`The adapter ${adapterName} has limited support for "${featureName}". Certain features may not work as expected.`,
);
break;
case AdapterFeatureStability.UNSUPPORTED:
logger.error(
'config',
`The adapter ${adapterName} does not currently support the feature "${featureName}". Your project may not build correctly.`,
);
break;
}
}View on GitHub (pinned to 52e6c34790)
Solutions
- Pin both astro and the adapter to known-compatible versions and retest on every upgrade
- Follow the adapter's issue tracker for stabilization progress on that feature
- If the feature is optional for you, disable it until the adapter marks it stable
Defensive patterns
Strategy: validation
Validate before calling
const features = astroConfig.adapter?.features ?? {};
for (const [name, f] of Object.entries(features)) {
if (f && typeof f === 'object' && f.support === 'experimental') {
console.warn('adapter experimental feature in use: ' + name);
}
} Type guard
function isExperimentalSupport(f: unknown): boolean {
return typeof f === 'object' && f !== null && (f as { support?: string }).support === 'experimental';
} Prevention
- Pin astro and adapter versions together when relying on experimental features
- Add smoke tests for each experimental feature you use
- Watch the adapter repo for stabilization announcements
When it happens
Trigger: The adapter declares support: 'experimental' for a feature in use (or checked via ensureAdapterSupport) and the warning is not suppressed.
Common situations: Enabling bleeding-edge adapter capabilities (e.g. new image services or secret managers) ahead of stabilization; warnings after an adapter ships experimental support for a previously-unsupported feature.
Related errors
- The adapter ${adapterName} has deprecated its support for "$
- The adapter ${adapterName} has limited support for "${featur
- [preview] No adapter found.
- Setting the 'mode' option is required.
- Unsupported React version: ${majorVersion}.
AI-assisted analysis of withastro/astro@52e6c34790 (2026-08-18).
Data as JSON: /api/errors/03299bead75b8b0c.
Report an issue: GitHub.