linux-credentials / linux-credentials/credentialsd
Rewrite webextension shim in Rust
Dieses Issue hat noch niemand übernommen.
- Vorherrschende Sprache
- Rust
- Sterne
- 259
- Forks
- 19
- Ø Merge
- 1 T. 2 Std.
- Gemergte PRs (30 T.)
- 12
Beschreibung
The web extension shim translates between the native messaging protocol and the D-Bus API for credentialsd. It's currently written in Python using the dbus-next Python package.
We target Ubuntu 22.04 as our oldest supported OS, but the dbus-next package isn't packaged until 25.04. To make it easier for people to test using the extension, it may be worth rewriting this in Rust.
However, part of the purpose of using a different language, namely Python, was to catch discrepancies between docs and the implementation. If we do rewrite it, it might be good to use a different library than zbus (like dbus-rs) or not to use the proxy macros from zbus and craft messages manually. This might be overkill, and maybe we just need to write better integration tests.
Beitragsleitfaden
Erste Schritte
- Lies das ganze Issue und danach den Beitragsleitfaden des Projekts.
- Schreib ins Issue, dass du es übernimmst — das erspart doppelte Arbeit.
- Forke das Repository und arbeite in einem Branch.
- Öffne einen Pull Request, der die Issue-Nummer nennt.
Rechercherichtung
Beginnen Sie mit webext/app und vergleichen Sie dessen Verhalten bei native messaging und D-Bus mit den dokumentierten Schnittstellen. Prüfen Sie, ob eine Neuschreibung in Rust oder bessere Integrationstests die Packaging-Einschränkung von Ubuntu 22.04 beheben würden, und definieren Sie den Abschluss so, dass das Verhalten des shims erhalten bleibt, ohne auf das nicht verfügbare Paket dbus-next angewiesen zu sein.
Vom Indexierungsmodell aus dem Issue-Text verfasst.
Bewertung
- Tech-Stack
- linux, python, rust
- Bereich
- api, backend
- Issue-Typ
- Refactoring
- Schwierigkeit
- 5/5
- Geschätzter Aufwand
- Über eine Woche
- Aktivitätsstatus
- Veraltet
- Klarheit
- Muss geklärt werden
- Anfängerfreundlichkeit
- 25/100