-
-
Notifications
You must be signed in to change notification settings - Fork 38
Open
Description
Our ABI usage mostly relies on two things:
- hopes and prayers
- using the heap
Reason being we bump ABI when the layout changes, not the size (e.g. appending to a class)
Solutions:
- wrap internal data structures in a struct passed to a unique_ptr
- only expose public data and every object has to be created by the lib, making it a subclass
- mark an ABI break every time a class is expanded
ref hyprwm/hyprpaper#225 #23 hyprwm/Hyprland#8813 hyprwm/Hyprland#8797
cc @fufexan @outfoxxed @gulafaran
(this also applies to all other hypr* libs)
Metadata
Metadata
Assignees
Labels
No labels