Hacktoberfest 2026: as issues que os mantenedores marcaram para outubro, abertas e boas para iniciantes. Ver issues do Hacktoberfest

Make azure-identity an optional dependency

Aberta
#862 2 comentários 0 reações 0 responsáveis Ver no GitHub

Mantenedores costumam responder em até 1 dia

Ninguém assumiu esta issue ainda.

Avaliação

Dificuldade
4/5
Tempo estimado
3-5 dias
Facilidade para iniciantes
48/100
Tipo de issue
Funcionalidade
Clareza
Razoavelmente clara
Status de atividade
Ativa
Stack de tecnologia
python, sqlalchemy
Domínio
database

Direção de pesquisa

Start by reading the dependency declarations for PyPI and the Microsoft conda package, then inspect the existing pyarrow extra and the lazy Entra ID imports in auth.py and db_connection.py. Decide how the conda add-on should be handled, update the dependency metadata and missing-package error guidance, and verify that SQL/Kerberos installs no longer pull in azure-identity while Entra ID users can install the documented extra.

Escrita pelo modelo de indexação a partir do texto da issue.

Descrição

triage needed

mssql-python declares azure-identity>=1.12.0 as a hard runtime dependency on both PyPI and the microsoft conda channel, but only imports it lazily inside the Entra ID auth paths (auth.py, db_connection.py). SQL auth and Kerberos users never load it.

On PyPI this costs seven small pure-Python wheels. On conda it is far worse: the conda-forge azure-core and msal_extensions recipes declare runtime dependencies the wheels do not (flask, pygobject, libsecret), so azure-identity cascades into ~60 packages and ~350 MB of celery, boto3, cairo and X11 libraries. Installing mssql-python 1.16.0 into a minimal linux-64 env grows it from ~860 MB to ~1.2 GB.

The feedstock problem is not yours to fix, but the only robust fix on your side is to not require azure-identity unconditionally.

Request

Move azure-identity to an extra, matching the existing pyarrow extra:

  • PyPI: pip install mssql-python[azure]
  • conda: drop azure-identity from run: and document it as a user-installed add-on, or publish a mssql-python-azure metapackage

The lazy imports are already in place. The Entra code paths just need a clear ImportError pointing at the extra when it is missing.

Environment: linux-64, conda-forge + microsoft channels, mssql-python 1.16.0.

Linguagem predominante
Python
Estrelas
479
Forks
62
Merge médio
2d 14h
PRs com merge (30d)
16

Preparar o ambiente

Abrir no Codespaces

Inicia o contêiner de desenvolvimento do projeto no navegador, com a sua própria conta do GitHub.

Primeiros passos

  1. Leia a issue inteira e depois o guia de contribuição do projeto.
  2. Comente na issue dizendo que vai assumir — evita que duas pessoas façam o mesmo trabalho.
  3. Faça um fork do repositório e trabalhe em uma branch.
  4. Abra um pull request que referencie o número da issue.

Mais de microsoft/mssql-python

Todas as issues de microsoft/mssql-python

Issues semelhantes

Mais issues de Python

Receba novas issues na sua caixa de entrada

Um resumo curto de issues do GitHub para quem está começando.