PowerShell / PowerShell/PSScriptAnalyzer
Internal: Build/Release inconsistencies compared to PowerShell Core repo
未關閉
還沒有人認領這個 Issue。
Area - Build
- 主要語言
- C#
- 星號
- 2.2k
- 分支
- 415
- 平均合併
- 13 小時 1 分鐘
- 30 天內合併 PR
- 2
描述
@JamesWTruher is planning to do some work for making the development/CI more consistent across PowerShell repos. I'll start here listing some potential candidates:
- Pester: PsCore recently moved from version 3 to 4. PSSA is currently on version 3.4
- Visual Studio Support: I already added support for being able to build and debug PSSA using Visual Studio out of the box. PsCore has a pending PR (5209) to achieve that.
- Editing ressources: When moving to Visual Studio development and netcore2, PSSA dropped the ability to auto-generate the c# ressource class because VS does that automatically when editing ressources. People who are not on Visual Studio, currently need to add new properties to the ressouce class file manually when adding new ressource entries. A further downside is that it unnecessarily blows up the diff in a PR can potentiall lead to merge conflicts. I originally did this due to difficulties when upgrading but I will consider bringing this functionality back
- PSSA gets its version number bumped only just before the release. PSCore does it straight after the release (branch) has been created. This makes it difficult when developing or reproing bugs because it means that the installed version has to be installed/uninstalled unnecessarily often.
- Make it easier to run all tests locally by moving out some logic from the appveyor fle into a ps module
- PSSA uses a GitFlow like branching strategy where PRs target the
developmentbranch. PSCore only works on master/release branches, which seems to be the better model for smaller repos. - PSSA has too many build scripts:
build.cmd,build.ps1,.build.ps1andbuildCoreClr.ps1
貢獻指南
從這裡開始
- 先讀完整個 Issue,再讀專案的貢獻指南。
- 在 Issue 下留言說明你要接手 —— 這能避免兩個人做同樣的事。
- Fork 儲存庫,在一個分支上完成修改。
- 送出 Pull Request,並在描述裡引用這個 Issue 編號。
研究方向
首先檢視 issue 中未勾選的項目,以及列出的建置檔案:build.cmd、build.ps1、.build.ps1、buildCoreClr.ps1 和 AppVeyor 設定。追蹤目前如何處理資源類別、版本管理和本機 CI 行為。完成的標準是,選定的一致性改進已實作,且其建置或發行行為已獲得驗證。
由索引模型根據 Issue 內容生成。
評估
- 技術堆疊
- csharp, powershell
- 領域
- build-system, ci-cd, release
- Issue 類型
- 重構
- 難度
- 4/5
- 預估耗時
- 3-5 天
- 活躍度
- 停滯
- 描述清晰度
- 需要釐清
- 新手友好度
- 25/100