Linux shared library footprint: selective linking or stripping unused native features?

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

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
cpp, csharp, dart, flutter, rust, typescript
Domínio
desktop, performance

Direção de pesquisa

Start by comparing the two linked CI runs to confirm the Linux x86_64 archive and shared library size changes, then inspect the native build and packaging entry points for libcnativeapi.so. Determine whether the build supports selecting window-management components or stripping unused features; done means documenting the expected footprint and a supported way to reduce it, if available.

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

Descrição

Context

After upgrading Butterfly from window_manager 0.5.2 to 0.6.0, the Linux x86_64 release archive grew by approximately 0.72 MB.

Size comparison
  • New libcnativeapi.so adds ~2.66 MB uncompressed.
  • Removed window_manager / screen_retriever native libraries totalled only ~87 KB.

CI references:

Questions
  1. Is this footprint expected for the current native build?
  2. Is there a supported way to include only window-management components, or to strip unused native functionality, so apps can keep the new API benefits while limiting download size?
Linguagem predominante
TypeScript
Estrelas
172
Forks
16
Merge médio
40min
PRs com merge (30d)
2

Preparar o ambiente

Este projeto não oferece contêiner de desenvolvimento, Dockerfile nem guia de contribuição, então a configuração fica por sua conta: comece pelo README e veja nosso guia da primeira contribuição para os passos gerais.

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 libnativeapi/nativeapi

Todas as issues de libnativeapi/nativeapi

Issues semelhantes

Mais issues de TypeScript

Receba novas issues na sua caixa de entrada

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