Linux shared library footprint: selective linking or stripping unused native features?
Dieses Issue hat noch niemand übernommen.
Bewertung
- Schwierigkeit
- 4/5
- Geschätzter Aufwand
- 3-5 Tage
- Anfängerfreundlichkeit
- 48/100
- Issue-Typ
- Feature
- Klarheit
- Größtenteils klar
- Aktivitätsstatus
- Aktiv
- Tech-Stack
- cpp, csharp, dart, flutter, rust, typescript
- Bereich
- desktop, performance
Rechercherichtung
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.
Vom Indexierungsmodell aus dem Issue-Text verfasst.
Beschreibung
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?
- Vorherrschende Sprache
- TypeScript
- Sterne
- 172
- Forks
- 16
- Ø Merge
- 40 Min.
- Gemergte PRs (30 T.)
- 2
Entwicklungsumgebung
Dieses Projekt bietet weder Dev-Container noch Dockerfile noch Beitragsleitfaden – die Einrichtung liegt bei Ihnen. Beginnen Sie mit der README; die allgemeinen Schritte stehen in unserem Leitfaden für den ersten Beitrag.
Erste Schritte
- Lesen Sie das ganze Issue und danach den Beitragsleitfaden des Projekts.
- Schreiben Sie ins Issue, dass Sie es übernehmen — das erspart doppelte Arbeit.
- Forken Sie das Repository und arbeiten Sie in einem Branch.
- Öffnen Sie einen Pull Request, der die Issue-Nummer nennt.
Mehr aus libnativeapi/nativeapi
-
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 68/100
libnativeapi/nativeapi#32 ·
-
Schwierigkeit 3/5 1-2 Tage Anfängerfreundlichkeit 56/100
libnativeapi/nativeapi#31 · 1 Kommentar · 2 Reaktionen ·
-
Schwierigkeit 4/5 3-5 Tage Anfängerfreundlichkeit 38/100
libnativeapi/nativeapi#30 ·
-
Schwierigkeit 4/5 3-5 Tage Anfängerfreundlichkeit 38/100
libnativeapi/nativeapi#29 ·
-
Schwierigkeit 3/5 1-2 Tage Anfängerfreundlichkeit 56/100
libnativeapi/nativeapi#28 · 3 Kommentare ·
Alle Issues in libnativeapi/nativeapi
Ähnliche Issues
-
Mend: dependency security vulnerability
Schwierigkeit 1/5 1-3 Stunden Anfängerfreundlichkeit 65/100
fdm-monster/fdm-monster#5563 ·
Maintainer antworten meist innerhalb von 1 Tag
-
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 72/100
be-BOP-io-SA/be-BOP#2849 ·
-
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 79/100
Maintainer antworten meist innerhalb von 1 Tag
-
1️⃣ phase/under-investigation flaky/confirmed flaky/needs-decision type/bug
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 65/100
growilabs/growi#12246 · 3 Kommentare ·
Maintainer antworten meist innerhalb von 1 Tag
-
🐛 The Rulekeeper - An index run that gives up on the lock ends SucceededEvtl. vergeben @github-actions hat das heute übernommen. Offen
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 72/100
SSWConsulting/SSW.Rules#2809 · 1 Kommentar ·
Maintainer antworten meist innerhalb von 1 Tag