{"record":{"id":"62da6b12b93e1d6d","repo":"quarkusio/quarkus","slug":"specifying-a-stream-stream-requires-the-regist","errorCode":null,"errorMessage":"Specifying a stream (--stream) requires the registry client to resolve resources. Please try again with the registry client enabled (--registry-client)","messagePattern":"Specifying a stream \\(--stream\\) requires the registry client to resolve resources\\. Please try again with the registry client enabled \\(--registry-client\\)","errorType":"exception","errorClass":"UnsupportedOperationException","httpStatus":null,"severity":"error","filePath":"devtools/cli-common/src/main/java/io/quarkus/cli/common/registry/RegistryClientMixin.java","lineNumber":78,"sourceCode":"        ExtensionCatalog catalog = getExtensionCatalog(targetVersion, log);\n        if (VALIDATE && catalog.getQuarkusCoreVersion().startsWith(\"1.\")) {\n            throw new UnsupportedOperationException(\"The version 2 CLI can not be used with Quarkus 1.x projects.\\n\"\n                    + \"Use the maven/gradle plugins when working with Quarkus 1.x projects.\");\n        }\n        catalog = CreateProjectHelper.completeCatalog(catalog, extensions, QuarkusProjectHelper.artifactResolver());\n        return QuarkusProjectHelper.getProject(projectRoot, catalog, buildTool, JavaVersion.NA, log);\n    }\n\n    ExtensionCatalog getExtensionCatalog(TargetQuarkusPlatformGroup targetVersion, OutputOptionMixin log)\n            throws RegistryResolutionException {\n        log.debug(\"Resolving Quarkus extension catalog for \" + targetVersion);\n        QuarkusProjectHelper.setMessageWriter(log);\n        if (enabled()) {\n            QuarkusProjectHelper.setToolsConfig(resolveConfig());\n        }\n\n        if (VALIDATE && targetVersion.isStreamSpecified() && !enabled()) {\n            throw new UnsupportedOperationException(\n                    \"Specifying a stream (--stream) requires the registry client to resolve resources. \" +\n                            \"Please try again with the registry client enabled (--registry-client)\");\n        }\n\n        if (targetVersion.isPlatformSpecified()) {\n            ArtifactCoords coords = targetVersion.getPlatformBom();\n            return ToolsUtils.resolvePlatformDescriptorDirectly(coords.getGroupId(), coords.getArtifactId(),\n                    coords.getVersion(), QuarkusProjectHelper.artifactResolver(), log);\n        }\n\n        final ExtensionCatalogResolver catalogResolver;\n        try {\n            catalogResolver = getExtensionCatalogResolver(log);\n        } catch (RegistryResolutionException e) {\n            log.warn(\n                    \"Configured Quarkus extension registries appear to be unavailable at the moment. \"\n                            + \"It should still be possible to create a project by providing the groupId:artifactId:version of the desired Quarkus platform BOM, \"\n                            + \"e.g. 'quarkus create -P \"","sourceCodeStart":60,"sourceCodeEnd":96,"githubUrl":"https://github.com/quarkusio/quarkus/blob/e1c734241f34c7919086ceb4c9262b4a58f6de44/devtools/cli-common/src/main/java/io/quarkus/cli/common/registry/RegistryClientMixin.java#L60-L96","documentation":"RegistryClientMixin.getExtensionCatalog throws this UnsupportedOperationException when a stream (--stream) is specified but the registry client is disabled. Stream resolution requires the Quarkus registry client to resolve stream-to-platform mappings; without it the CLI cannot map a stream to concrete platform coordinates.","triggerScenarios":"Calling getExtensionCatalog(targetVersion, log) (via `quarkus create`/`quarkus add` with --stream=<x.y>) when --registry-client was not enabled (RegistryClientMixin.enabled() is false) and targetVersion.isStreamSpecified() is true.","commonSituations":"Running `quarkus create app ... -S 3.2` in environments where the registry client is disabled by default or by config (quarkus.registry disabled), e.g. some CI setups or with older CLI defaults.","solutions":["Re-run the command with --registry-client so streams can be resolved.","Instead of --stream, specify an exact platform version/BOM with --platform-bom or -P io.quarkus.platform:quarkus-bom:3.2.x, which doesn't need registry stream resolution.","Check ~/.quarkus/config.yaml for a registry-client-disabled setting and remove it if you want stream support."],"exampleFix":"// before\nquarkus create app com.acme:demo --stream=3.2\n// after\nquarkus create app com.acme:demo --stream=3.2 --registry-client","handlingStrategy":"fallback","validationCode":"// before invoking with a stream, check client enablement\nif (targetVersion.isStreamSpecified() && !registryClientMixin.enabled()) {\n    // use explicit platform BOM instead of a stream\n}","typeGuard":null,"tryCatchPattern":"try {\n    catalog = mixin.getExtensionCatalog(targetVersion, log);\n} catch (UnsupportedOperationException e) {\n    // retry with --registry-client or with an explicit --platform-bom\n}","preventionTips":["Always pass --registry-client when using --stream.","Prefer explicit platform coordinates (--platform-bom) in CI where the registry client may be disabled.","Check quarkus registry config for client-disabled flags."],"tags":["cli","registry-client","stream-resolution"],"backgroundTag":"registry-client-required","analyzedSha":"e1c734241f34c7919086ceb4c9262b4a58f6de44","analyzedAt":"2026-09-05T17:01:29.979Z","contentChangedAt":"2026-09-05T17:01:29.979Z","schemaVersion":2},"datasetVersion":"2026-09-14T00:17:10.932Z"}