Linux shared library footprint: selective linking or stripping unused native features?
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.soadds ~2.66 MB uncompressed. - Removed
window_manager/screen_retrievernative libraries totalled only ~87 KB.
CI references:
- Previous: https://github.com/LinwoodDev/Butterfly/actions/runs/41530883915
- Updated: https://github.com/LinwoodDev/Butterfly/actions/runs/41616087051
Questions
- Is this footprint expected for the current native build?
- 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
- Leia a issue inteira e depois o guia de contribuição do projeto.
- Comente na issue dizendo que vai assumir — evita que duas pessoas façam o mesmo trabalho.
- Faça um fork do repositório e trabalhe em uma branch.
- Abra um pull request que referencie o número da issue.
Mais de libnativeapi/nativeapi
-
Dificuldade 2/5 1-3 horas Facilidade para iniciantes 68/100
libnativeapi/nativeapi#32 ·
-
Dificuldade 3/5 1-2 dias Facilidade para iniciantes 56/100
libnativeapi/nativeapi#31 · 1 comentário · 2 reações ·
-
Dificuldade 4/5 3-5 dias Facilidade para iniciantes 38/100
libnativeapi/nativeapi#30 ·
-
Dificuldade 4/5 3-5 dias Facilidade para iniciantes 38/100
libnativeapi/nativeapi#29 ·
-
Dificuldade 3/5 1-2 dias Facilidade para iniciantes 56/100
libnativeapi/nativeapi#28 · 3 comentários ·
Todas as issues de libnativeapi/nativeapi
Issues semelhantes
-
Mend: dependency security vulnerability
Dificuldade 1/5 1-3 horas Facilidade para iniciantes 65/100
fdm-monster/fdm-monster#5563 ·
Mantenedores costumam responder em até 1 dia
-
Dificuldade 2/5 1-3 horas Facilidade para iniciantes 72/100
be-BOP-io-SA/be-BOP#2849 ·
-
Dificuldade 2/5 1-3 horas Facilidade para iniciantes 79/100
Mantenedores costumam responder em até 1 dia
-
1️⃣ phase/under-investigation flaky/confirmed flaky/needs-decision type/bug
Dificuldade 2/5 1-3 horas Facilidade para iniciantes 65/100
growilabs/growi#12246 · 3 comentários ·
Mantenedores costumam responder em até 1 dia
-
🐛 The Rulekeeper - An index run that gives up on the lock ends SucceededTalvez já em andamento @github-actions assumiu hoje. Aberta
Dificuldade 2/5 1-3 horas Facilidade para iniciantes 72/100
SSWConsulting/SSW.Rules#2809 · 1 comentário ·
Mantenedores costumam responder em até 1 dia