Refactor PowerShell adapter module code for maintainability
I maintainer di solito rispondono entro 1 giorno
Nessuno ha ancora preso questa issue.
Valutazione
- Difficoltà
- 5/5
- Tempo stimato
- Più di una settimana
- Idoneità per principianti
- 42/100
- Tipo di issue
- Refactoring
- Chiarezza
- Abbastanza chiara
- Stato di attività
- Tranquilla
- Stack tecnologico
- powershell
- Ambito
- tooling
Direzione di ricerca
Inizia individuando lo script di ingresso condiviso e i moduli psDscAdapter e win_psDscAdapter, quindi mappa le loro implementazioni duplicate e i test di accettazione esistenti. Definisci le funzioni condivise, i relativi parametri e i dati restituiti, nonché l'ambito degli unit test per le funzioni private prima della ristrutturazione; il lavoro è completato quando entrambi gli adapter utilizzano il modulo comune e i nuovi unit test coprono il comportamento estratto.
Scritto dal modello di indicizzazione a partire dal testo della issue.
Descrizione
Summary of the new feature / enhancement
As a maintainer of DSC, I want to be able to readily navigate, understand, and update the PowerShell adapter code so that I can effectively contribute and troubleshoot the adapters.
Currently, the PowerShell adapter implementations share an entrypoint script but define two separate modules with shared implementations for functionality duplicated in both modules.
Additionally, the code organization is a bit difficult to follow and uses long complex statements repeatedly through the code which could potentially be encapsulated into small functions for easier testing and debugging.
Proposed technical implementation details (optional)
I propose that we:
- Extract common functions into a
common_psDscAdaptermodule that bothpsDscAdapterandwin_psDscAdaptercan depend on. - Standardize and at least minimally document the functions - their parameters, usage, and return data - for easier cognitive loading for maintainers. Even though this code won't be seen or used directly by end users, this reference information can help maintainers and new contributors.
- Examine the implementation for code that can be extracted into useful functions for the purposes of testing and making the overall implementation easier to read and follow.
- Add unit testing for the private functions to verify behavior and make maintenance easier and safer. We currently rely almost exclusively on acceptance tests that invoke the adapter code through DSC, which is necessarily slower and involves more levels of indirection.
- Lingua principale
- Rust
- Stelle
- 526
- Fork
- 76
- Merge medio
- 4g 20h
- PR unite (30g)
- 24
Preparare l'ambiente
Come iniziare
- Leggi tutta la issue e poi la guida ai contributi del progetto.
- Commenta sulla issue per dire che te ne occupi tu — evita che due persone facciano lo stesso lavoro.
- Fai un fork del repository e lavora su un branch.
- Apri una pull request che faccia riferimento al numero della issue.
Altre issue di PowerShell/DSC
-
Issue-Enhancement
Difficoltà 5/5 Più di una settimana Idoneità per principianti 38/100
PowerShell/DSC#1729 · 1 commento ·
I maintainer di solito rispondono entro 1 giorno
-
Feature Request: Support dsc functions in executable argsForse già presa @SteveL-MSFT l’ha presa 3 giorni fa. ApertaIssue-Enhancement
Difficoltà 4/5 3-5 giorni Idoneità per principianti 62/100
PowerShell/DSC#1722 · 4 commenti · 1 assegnatario ·
I maintainer di solito rispondono entro 1 giorno
-
Dev-UX Needs Triage
Difficoltà 5/5 Più di una settimana Idoneità per principianti 35/100
PowerShell/DSC#1694 ·
I maintainer di solito rispondono entro 1 giorno
-
Issue-Enhancement Needs Triage
Difficoltà 5/5 Più di una settimana Idoneità per principianti 38/100
PowerShell/DSC#1683 · 5 commenti ·
I maintainer di solito rispondono entro 1 giorno
-
Issue-Enhancement Needs Triage
Difficoltà 5/5 Più di una settimana Idoneità per principianti 35/100
PowerShell/DSC#1673 ·
I maintainer di solito rispondono entro 1 giorno
Tutte le issue di PowerShell/DSC
Issue simili
-
area:casework bug criticality:p3 triage:needs-implementation
Difficoltà 2/5 1-3 ore Idoneità per principianti 84/100
registrystack/registry-stack#1623 ·
I maintainer di solito rispondono entro 1 giorno
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 72/100
DioxusLabs/anyrender#98 ·
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 76/100
leptos-rs/leptos#4885 · 1 commento ·
I maintainer di solito rispondono entro 1 giorno
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 82/100
I maintainer di solito rispondono entro 1 giorno
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 78/100
longbridge/gpui-kit#3276 ·
I maintainer di solito rispondono entro 1 giorno