JuliaPy / JuliaPy/PythonCall.jl

Turn off conda initialization during incremental compilation?

Aberta
#296 3 comentários 0 reações 0 responsáveis Ver no GitHub
Linguagem predominante
Julia
Estrelas
1.1k
Forks
86
Merge médio
1d 22h
PRs com merge (30d)
3

Descrição

If you have a `using PythonCall` inside your package "Foo", then just _precompiling_ Foo will trigger creation of the PythonCall's Conda environment, downloading of packages, etc...

IMO this is undesired. I know there's environment variables to prevent this, but while I remember to set them when actually running a program, its very often I forget during precompilation, especially since precompilation automatically gets triggered at various times (when instantiating, upgrading, etc...)

Wondering if it makes sense to turn that off during precompilation entirely with a check to `ccall(:jl_generating_output, Cint, ())`? It would mean Python wouldn't be available to any dependent packages during precompilation either, but perhaps thats a better behavior? I don't have the strongest feelings one way or the either, probably leaning slightly that it'd be nicer to make this change, but just wanted to point out.

Guia de contribuição

Nenhum guia de contribuição indexado para este repositório

Direção de pesquisa

Start by reviewing how PythonCall handles environment initialization during Julia package precompilation, including the existing environment-variable controls and the proposed ccall(:jl_generating_output, Cint, ()) check. Determine the intended behavior for dependent packages that need Python during precompilation, then verify the chosen behavior with precompilation scenarios.

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

Avaliação

Stack de tecnologia
julia, python
Domínio
build-system
Tipo de issue
Funcionalidade
Dificuldade
5/5
Tempo estimado
Mais de uma semana
Status de atividade
Estagnada
Clareza
Razoavelmente clara
Facilidade para iniciantes
25/100

Receba novas issues na sua caixa de entrada

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