PowerShell / PowerShell/PSScriptAnalyzer

Internal: Build/Release inconsistencies compared to PowerShell Core repo

Ouverte
#871 0 commentaires 0 réactions 0 personnes assignées Voir sur GitHub

Personne n'a encore pris cette issue.

Area - Build
Langage dominant
C#
Étoiles
2.2k
Forks
414
Merge moyen
13 h 1 min
PR mergées (30 j)
2

Description

@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 development branch. 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.ps1 and buildCoreClr.ps1

Guide de contribution

Ouvrir le guide de contribution

Par où commencer

  1. Lisez l'issue en entier, puis le guide de contribution du projet.
  2. Signalez en commentaire que vous la prenez — cela évite que deux personnes fassent le même travail.
  3. Forkez le dépôt et travaillez sur une branche.
  4. Ouvrez une pull request qui référence le numéro de l'issue.

Piste de recherche

Commencez par examiner les éléments non cochés de l’issue et les fichiers de build indiqués : build.cmd, build.ps1, .build.ps1, buildCoreClr.ps1 et la configuration AppVeyor. Suivez la manière dont les classes de ressources, la gestion des versions et le comportement du CI local sont actuellement gérés. Le travail est terminé lorsque les améliorations de cohérence sélectionnées sont implémentées et que leur comportement de build ou de release est vérifié.

Rédigé par le modèle d'indexation à partir du texte de l'issue.

Évaluation

Stack technique
csharp, powershell
Domaine
build-system, ci-cd, release
Type d'issue
Refactorisation
Difficulté
4/5
Temps estimé
3-5 jours
Activité
À l'abandon
Clarté
À clarifier
Accessibilité débutants
25/100

Recevez les nouvelles issues par e-mail

Un résumé court des issues GitHub adaptées aux débutants.