PowerShell / PowerShell/PSScriptAnalyzer
Internal: Build/Release inconsistencies compared to PowerShell Core repo
未关闭
还没有人认领这个 Issue。
Area - Build
- 主要语言
- C#
- 星标
- 2.2k
- 派生
- 414
- 平均合并
- 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