Introduce `baseview-core` crate for a common, more stable API for other crates to re-export
Les mainteneurs répondent en général sous 1 jour
Personne n'a encore pris cette issue.
Évaluation
- Difficulté
- 5/5
- Temps estimé
- Plus d'une semaine
- Accessibilité débutants
- 35/100
Piste de recherche
Start by reading the baseview crate’s public API and the GUI integration crates mentioned in the issue, egui-baseview and iced-baseview, to see which types they wrap or re-implement. Then identify which APIs are stable utilities for plugin use and which depend on WindowHandler and GUI adapters. Done means a proposed baseview-core crate boundary and trait-based API that reduces this duplication while supporting the compatibility goal.
Rédigé par le modèle d'indexation à partir du texte de l'issue.
Description
Currently, GUI framework integration crates (such as egui-baseview and iced-baseview) have to either wrap or re-implement a lot of baseview's types if they want to expose them in their public APIs, just to shield themselves from semver-incompatible baseview releases (even though the aforementioned APIs actually rarely change, compared to e.g. WindowHandler APIs).
This results in a lot of tedious and ultimately unnecessary code that those crates have to implement and maintain.
This is because the baseview crate currently acts as a bridge for two different sides: the GUI implementation/framework adapter side, and the plugin/plugin framework/host side.
We could create a new baseview-core (name TBD) crate that would expose the more stable utilities and APIs as traits for plugins to use directly, while leaving out the WindowHandler & co. APIs only for GUI implementations (and/or framework adapters) to use.
Ideally, plugin frameworks such as Nice-Plug could potentially even support spawning and managing any type of Window that implements baseview-core traits, making any-to-any compatibility between plugin frameworks and GUI frameworks possible.
- Langage dominant
- Rust
- Étoiles
- 387
- Forks
- 128
- Merge moyen
- 3 j 2 h
- PR mergées (30 j)
- 15
Préparer son environnement
Ce projet ne fournit ni conteneur de développement, ni Dockerfile, ni guide de contribution : l'installation est à votre charge. Commencez par son README, et consultez notre guide de la première contribution pour les étapes générales.
Par où commencer
- Lisez l'issue en entier, puis le guide de contribution du projet.
- Signalez en commentaire que vous la prenez — cela évite que deux personnes fassent le même travail.
- Forkez le dépôt et travaillez sur une branche.
- Ouvrez une pull request qui référence le numéro de l'issue.
Autres issues de RustAudio/baseview
-
Difficulté 5/5 Plus d'une semaine Accessibilité débutants 14/100
RustAudio/baseview#359 · 4 commentaires ·
Les mainteneurs répondent en général sous 1 jour
-
Add support for TimersOuverte
Difficulté 5/5 Plus d'une semaine Accessibilité débutants 25/100
Les mainteneurs répondent en général sous 1 jour
-
enhancement
Difficulté 5/5 Plus d'une semaine Accessibilité débutants 25/100
Les mainteneurs répondent en général sous 1 jour
-
Add proper panic handlingOuverte
Difficulté 5/5 Plus d'une semaine Accessibilité débutants 25/100
Les mainteneurs répondent en général sous 1 jour
-
Difficulté 5/5 Plus d'une semaine Accessibilité débutants 35/100
RustAudio/baseview#342 · 1 réaction ·
Les mainteneurs répondent en général sous 1 jour
Toutes les issues de RustAudio/baseview
Issues similaires
-
Settings: the AI & Intelligence page cannot be scrolled (its Flickable has no viewport height)Ouvertearea/desktop-shell P1-high
Difficulté 2/5 1-3 heures Accessibilité débutants 76/100
yantrikos/yantrik-os#998 ·
Les mainteneurs répondent en général sous 1 jour
-
bug P2
Difficulté 2/5 1-3 heures Accessibilité débutants 84/100
Les mainteneurs répondent en général sous 1 jour
-
Difficulté 2/5 1-3 heures Accessibilité débutants 68/100
plrigaux/sysd-manager#85 ·
-
Difficulté 2/5 1-3 heures Accessibilité débutants 72/100
dsx-ai-factory/infra-controller#8341 ·
Les mainteneurs répondent en général sous 1 jour
-
documentation
Difficulté 2/5 1-3 heures Accessibilité débutants 65/100
Les mainteneurs répondent en général sous 1 jour