Add regression coverage for missing optional connector dependencies
Los mantenedores suelen responder en 2 días
Nadie ha tomado este issue todavía.
Evaluación
- Dificultad
- 3/5
- Tiempo estimado
- 1-2 días
- Aptitud para principiantes
- 68/100
Línea de trabajo
Comienza localizando los módulos de conexión de Python que utilizan el patrón establecido de importación opcional y cualquier prueba existente para dependencias ausentes. Parametriza casos representativos, simula paquetes upstream ausentes sin depender de extras instalados ni de credenciales, y verifica que los errores indiquen tanto el paquete ausente como el extra de instalación requerido de Semantic Kernel, mientras los imports perezosos permanecen intactos.
Escrito por el modelo de indexación a partir del texto del issue.
Descripción
Summary
Add parameterized tests ensuring imports or construction of Python connectors with missing optional dependencies produce actionable errors naming the required install extra.
Current implementation facts
Python connectors rely on optional upstream packages and are installed through extras.
Problem
A missing SDK can currently surface as a generic ModuleNotFoundError without telling the user which Semantic Kernel extra to install. Even where messages exist, broad test coverage prevents them from drifting.
Scope
- Select representative connector modules using the established optional-import pattern.
- Simulate missing upstream packages.
- Assert the exception names the relevant install extra.
- Keep tests isolated from installed local extras.
Non-goals
- Do not eagerly import all connectors.
- Do not change dependency ranges.
Acceptance criteria
- Errors identify both the missing package and install extra.
- Tests require no provider credentials.
- Existing lazy-import behavior is preserved.
I searched Semantic Kernel issues and PRs for missing optional dependencies, connector import errors, and install-extra messages before filing this proposal.
- Lenguaje dominante
- C#
- Estrellas
- 28.6k
- Forks
- 4.8k
- Merge medio
- 12 h 20 min
- PR fusionados (30 d)
- 12
Preparar el entorno
Primeros pasos
- Lee el issue completo y luego la guía de contribución del proyecto.
- Comenta en el issue que vas a ocuparte — evita que dos personas hagan lo mismo.
- Haz un fork del repositorio y trabaja en una rama.
- Abre un pull request que haga referencia al número del issue.
Más de microsoft/semantic-kernel
-
python triage
Dificultad 2/5 1-3 horas Aptitud para principiantes 85/100
microsoft/semantic-kernel#14491 · 1 comentario ·
Los mantenedores suelen responder en 2 días
-
python triage
Dificultad 2/5 1-3 horas Aptitud para principiantes 82/100
microsoft/semantic-kernel#14490 · 1 comentario ·
Los mantenedores suelen responder en 2 días
-
Python: [Python] structured_outputs_transform reuses ChatHistory across calls (prompt pollution)Abiertopython triage
Dificultad 2/5 1-3 horas Aptitud para principiantes 88/100
microsoft/semantic-kernel#14483 · 1 comentario ·
Los mantenedores suelen responder en 2 días
-
.NET python triage
Dificultad 2/5 1-3 horas Aptitud para principiantes 74/100
microsoft/semantic-kernel#14482 · 2 comentarios ·
Los mantenedores suelen responder en 2 días
-
Python: [Python] as_agent_framework_tool drops parameter defaults (optionals become required)Abiertopython triage
Dificultad 2/5 1-3 horas Aptitud para principiantes 85/100
microsoft/semantic-kernel#14481 ·
Los mantenedores suelen responder en 2 días
Todos los issues de microsoft/semantic-kernel
Issues similares
-
0 - Backlog Bug
Dificultad 2/5 1-3 horas Aptitud para principiantes 88/100
BrighterCommand/Brighter#4444 ·
Los mantenedores suelen responder en 1 día
-
bug
Dificultad 2/5 1-3 horas Aptitud para principiantes 88/100
Los mantenedores suelen responder en 1 día
-
area:frontend bug FE P3
Dificultad 2/5 1-3 horas Aptitud para principiantes 86/100
klasolsson81/jobbliggaren#1915 ·
Los mantenedores suelen responder en 1 día
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 72/100
-
triage
Dificultad 2/5 1-3 horas Aptitud para principiantes 76/100
microsoft/vscode-copilotstudio#431 ·
Los mantenedores suelen responder en 2 días