kinsondigital / branchvalidator Goto Github PK
View Code? Open in Web Editor NEWValidates branch names for the organization projects
License: MIT License
Validates branch names for the organization projects
License: MIT License
Fix the badges and remove unnecessary ones. The reason that they are showing LINKS is because they are broken.
It is assumed that something changed with the service called Shields IO has changed causing the issue.
Other repos have been fixed already.
Use the badges in Velaptor as a reference.
No response
No response
Change Type | Label |
---|---|
Bug Fixes | 🐛bug |
Breaking Changes | 🧨breaking changes |
New Feature | ✨new feature |
Workflow Changes | workflow |
Code Doc Changes | 🗒️documentation/code |
Product Doc Changes | 📝documentation/product |
Priority Type | Label |
---|---|
Low Priority | low priority |
Medium Priority | medium priority |
High Priority | high priority |
Use one of the GitHub marketplace logos and set it as the main logo throughout the project and org.
This issue is finished when:
No response
No response
Change Type | Label |
---|---|
Bug Fixes |
🐛bug
|
Breaking Changes |
🧨breaking changes
|
Enhancement |
✨new feature
|
Workflow Changes | https://github.com/KinsonDigital/BranchValidator/labels/workflow |
Code Doc Changes |
📑documentation/code
|
Product Doc Changes |
📝documentation/product
|
Priority Type | Label |
---|---|
Low Priority |
low priority
|
Medium Priority |
medium priority
|
High Priority |
high priority
|
Implement the new KDActions library to replace common boiler plate code with GitHub actions.
No response
Change Type | Label |
---|---|
Bug Fixes |
🐛bug
|
Breaking Changes |
🧨breaking changes
|
New Feature |
✨new feature
|
Workflow Changes | https://github.com/KinsonDigital/BranchValidator/labels/workflow |
Code Doc Changes |
📑documentation/code
|
Product Doc Changes |
📝documentation/product
|
Priority Type | Label |
---|---|
Low Priority |
low priority
|
Medium Priority |
medium priority
|
High Priority |
high priority
|
Update the YAML code examples in the README.md file.
The update details below:
Update all checkout actions from v2 to v3
- - uses: actions/checkout@v2
+ - uses: actions/checkout@v3
No response
No response
Change Type | Label |
---|---|
Bug Fixes |
🐛bug
|
Breaking Changes |
🧨breaking changes
|
New Feature |
✨new feature
|
Workflow Changes | https://github.com/KinsonDigital/BranchValidator/labels/workflow |
Code Doc Changes |
📑documentation/code
|
Product Doc Changes |
📝documentation/product
|
Priority Type | Label |
---|---|
Low Priority |
low priority
|
Medium Priority |
medium priority
|
High Priority |
high priority
|
Setup dependabot for the project.
Refer to the Velaptor project for the how to setup the YAML config tile.
The name of the file is dependabot.yml
Note This is because if this issue is completed first, it will start the bot and all of the NuGet package updates will be detected and a lot of PR's will be created. The initial update of the NuGet packages should be done first to help save work.
No response
Change Type | Label |
---|---|
Bug Fixes | 🐛bug |
Breaking Changes | 🧨breaking changes |
New Feature | ✨new feature |
Workflow Changes | workflow |
Code Doc Changes | 🗒️documentation/code |
Product Doc Changes | 📝documentation/product |
Priority Type | Label |
---|---|
Low Priority | low priority |
Medium Priority | medium priority |
High Priority | high priority |
Update the release-todo-issue-template.yml
file.
Use the YAML below for the update.
Refer to example below:
- label: Pull request has been approved and merged into a release branch before performing the release. (Releases are performed on release branches, not preview release branches.)
- label: Release to **_preview_** or **_production_** complete. Refer to the **_Release Execution_** section below.
No response
No response
Change Type | Label |
---|---|
Bug Fixes |
🐛bug
|
Breaking Changes |
🧨breaking changes
|
New Feature |
✨new feature
|
Workflow Changes | https://github.com/KinsonDigital/BranchValidator/labels/workflow |
Code Doc Changes |
📑documentation/code
|
Product Doc Changes |
📝documentation/product
|
Priority Type | Label |
---|---|
Low Priority |
low priority
|
Medium Priority |
medium priority
|
High Priority |
high priority
|
Update and improve project item issue template
This issue is finished when:
Issue templates updated
PR templates updated and text -template
added to the end of the file before the file extension
Add/Update config.yml
Update all URL's in all of the templates to match for the project
No response
No response
Remove empty sections from release notes
No response
No response
Change Type | Label |
---|---|
Bug Fixes |
🐛bug
|
Breaking Changes |
🧨breaking changes
|
New Feature |
✨new feature
|
Workflow Changes | https://github.com/KinsonDigital/BranchValidator/labels/workflow |
Code Doc Changes |
📑documentation/code
|
Product Doc Changes |
📝documentation/product
|
Priority Type | Label |
---|---|
Low Priority |
low priority
|
Medium Priority |
medium priority
|
High Priority |
high priority
|
This is for the purpose of possibly removing the ScriptGenerator project and replacing it with a source generator
Acceptance Criteria:
Update both the build and testing status check workflows to use a tag instead of a branch when calling the [Infrastructure](https://KinsonDigital/Infrastructure] reusable workflows.
They should use tag v1.0.0
Update all of the NuGet packages to newest versions
This can be done by using Visual Studio.
Ask @CalvinWilkinson for assistance if needed.
No response
No response
Change Type | Label |
---|---|
Bug Fixes | 🐛bug |
Breaking Changes | 🧨breaking changes |
New Feature | ✨new feature |
Workflow Changes | workflow |
Code Doc Changes | 🗒️documentation/code |
Product Doc Changes | 📝documentation/product |
Priority Type | Label |
---|---|
Low Priority | low priority |
Medium Priority | medium priority |
High Priority | high priority |
Update the repository description to the value below:
Refactor all of the unit test assertions to use the FluentAssertions library.
This will greatly cleanup the unit testing side of things and make the creation of unit tests easier.
QuoteAnalyzerServiceTests.cs
- 43 linesExpressionExecutorServiceTests.cs
- 99 linesExpressionValidatorServiceTests.cs
- 101 linesFunctionExtractorServiceTests.cs
- 117 linesParsingServiceTests.cs
- 35 linesNo response
No response
Change Type | Label |
---|---|
Bug Fixes | 🐛bug |
Breaking Changes | 🧨breaking changes |
New Feature | ✨new feature |
Workflow Changes | workflow |
Code Doc Changes | 🗒️documentation/code |
Product Doc Changes | 📝documentation/product |
Priority Type | Label |
---|---|
Low Priority | low priority |
Medium Priority | medium priority |
High Priority | high priority |
Add a URL link to the console output to create an issue for this project.
This will always be printed to the console. Print this as part of the welcome message.
This issue is finished when:
No response
Change Type | Label |
---|---|
Bug Fixes |
🐛bug
|
Breaking Changes |
🧨breaking changes
|
New Features |
✨new feature
|
Workflow Changes | https://github.com/KinsonDigital/BranchValidator/labels/workflow |
Code Doc Changes |
📑documentation/code
|
Product Doc Changes |
📝documentation/product
|
Priority Type | Label |
---|---|
Low Priority |
low priority
|
Medium Priority |
medium priority
|
High Priority |
high priority
|
Refactor all of the unit test assertions to use the FluentAssertions library.
This will greatly cleanup the unit testing side of things and make the creation of unit tests easier.
GitHubActionIntegrationTests.cs
- 209 linesInvalidActionInputTests.cs
- 52 linesInvalidBranchExceptionTests.cs
- 52 linesInvalidSyntaxExpressionTests.cs
- 52 linesLoadEmbeddedResourceExceptionTests.cs
- 48 linesNo response
No response
Change Type | Label |
---|---|
Bug Fixes | 🐛bug |
Breaking Changes | 🧨breaking changes |
New Feature | ✨new feature |
Workflow Changes | workflow |
Code Doc Changes | 🗒️documentation/code |
Product Doc Changes | 📝documentation/product |
Priority Type | Label |
---|---|
Low Priority | low priority |
Medium Priority | medium priority |
High Priority | high priority |
Refactor all of the unit test assertions to use the FluentAssertions library.
This will greatly cleanup the unit testing side of things and make the creation of unit tests easier.
UpdateBranchNameObservableTests.cs
- 34 linesFunctionAnalyzerServiceTests.cs
- 192 linesNegativeNumberAnalyzerTests.cs
- 44 linesOperatorAnalyzerServiceTests.cs
- 63 linesParenAnalyzerServiceTests.cs
- 39 linesNo response
No response
Change Type | Label |
---|---|
Bug Fixes | 🐛bug |
Breaking Changes | 🧨breaking changes |
New Feature | ✨new feature |
Workflow Changes | workflow |
Code Doc Changes | 🗒️documentation/code |
Product Doc Changes | 📝documentation/product |
Priority Type | Label |
---|---|
Low Priority | low priority |
Medium Priority | medium priority |
High Priority | high priority |
Add 2 more checkboxes to all 4 PR templates. These checkboxes will describe to the user to make sure that the project and milestones between the PR and issue match.
Checkboxes To Add:
- [ ] Project assigned matches the project of the associated issue.
- [ ] Milestone assigned matches the milestone of the associated issue.
💡Make sure to add a single empty line between each checkbox.
💡Make sure that the order of the checkboxes is the "project" first, then the "milestone"
Templates To Update:
feature-pr-template.md
preview-feature-pr-template.md
preview-release-pr-template.md
production-release-pr-template.md
For the feature-pr-template.md
and preview-feature-pr-template.md
, insert the 2 new checkboxes in the location shown below:
- [ ] The **_base(target)_** branch for this pull request is a **_development_** branch with the name **_develop_**.
- A **_base(target)_** branch is the branch that the **_head(source)_** branch is merging into.
- [ ] Pull request title matches the title of the linked issue.
👉🏼 INSERT CHECKBOXES HERE
For the preview-release-pr-template.md
, insert the 2 new checkboxes in the location shown below:
- [ ] Associated issue exists and is linked to this pull request.👈🏼INSERT TASK HERE
- One issue per pull request.
- [ ] Pull request title matches the example below, using the correct version.
<details closed><summary>Example</summary>
``` xml
Syntax: 🚀Release To Preview - v<major>.<minor>.<patch>-preview.<prev-num>
Example: 🚀Release To Preview - v1.2.3-preview.4
```
</details>
👉🏼 INSERT CHECKBOXES HERE
For the production-release-pr-template.md
, insert the 2 new checkboxes in the location shown below:
- [ ] Associated issue exists and is linked to this pull request.👈🏼INSERT TASK HERE
- One issue per pull request.
- [ ] Pull request title matches the example below, using the correct version.
<details closed><summary>Example</summary>
``` xml
Syntax: 🚀Release To Production - v<major>.<minor>.<patch>
Example: 🚀Release To Production - v1.2.3
```
</details>
👉🏼 INSERT CHECKBOXES HERE
Also make a small change to the feature-pr-template.md
template by updating the checkbox below
- - [ ] Pull request title matches the title of the linked issue.
+ - [ ] Pull request title matches the title of the associated issue.
feature-pr-template.md
update.preview-feature-pr-template.md
update.preview-release-pr-template.md
update.production-release-pr-template.md
update.No response
No response
Priority Type | Label |
---|---|
Low Priority | https://github.com/KinsonDigital/KDActionUtils/labels/low%20priority |
Medium Priority | https://github.com/KinsonDigital/KDActionUtils/labels/medium%20priority |
High Priority | https://github.com/KinsonDigital/KDActionUtils/labels/high%20priority |
Update the README.md
file by adding the following Quick Note section. This text is about notifying the user that the action must be used in a job that runs on Ubuntu, not Windows.
Insert the markdown in between the What is it? and Quick Example sections.
Markdown to add:
<div align="center"><h3 style="font-weight:bold">⚠️Quick Note⚠️</h3></div>
This GitHub action is built using C#/NET and runs in a docker container. If the job step for running this action is contained in a job that runs on **Windows**, you will need to move the step to a job that runs on **Ubuntu**. You can split up your jobs to fulfill `runs-on` requirements of the GitHub action. This can be accomplished by moving the step into it's own job. You can then route the action step outputs to the job outputs and use them throughout the rest of your workflow. For more information, refer to the Github documentation links below:
For more info on step and job outputs, refer to the GitHub documentation links below:
- [Defining outputs for jobs](https://docs.github.com/en/actions/using-jobs/defining-outputs-for-jobs)
- [Setting a step action output parameter](https://docs.github.com/en/actions/using-workflows/workflow-commands-for-github-actions#setting-an-output-parameter)
No response
No response
Change Type | Label |
---|---|
Bug Fixes |
🐛bug
|
Breaking Changes |
🧨breaking changes
|
New Feature |
✨new feature
|
Workflow Changes | https://github.com/KinsonDigital/BranchValidator/labels/workflow |
Code Doc Changes |
📑documentation/code
|
Product Doc Changes |
📝documentation/product
|
Priority Type | Label |
---|---|
Low Priority |
low priority
|
Medium Priority |
medium priority
|
High Priority |
high priority
|
Refactor all of the unit test assertions to use the FluentAssertions library.
This will greatly cleanup the unit testing side of things and make the creation of unit tests easier.
ActionInputsTests.cs
- 122 linesExtensionMethodsTests.cs
- 144 linesFunctionDefinitionsTests.cs
- 121 linesGitHubActionTests.cs
- 482 linesNo response
No response
Change Type | Label |
---|---|
Bug Fixes | 🐛bug |
Breaking Changes | 🧨breaking changes |
New Feature | ✨new feature |
Workflow Changes | workflow |
Code Doc Changes | 🗒️documentation/code |
Product Doc Changes | 📝documentation/product |
Priority Type | Label |
---|---|
Low Priority | low priority |
Medium Priority | medium priority |
High Priority | high priority |
Update branching documentation and images to match Velaptor
No response
No response
Change Type | Label |
---|---|
Bug Fixes |
🐛bug
|
Breaking Changes |
🧨breaking changes
|
New Feature |
✨new feature
|
Workflow Changes | https://github.com/KinsonDigital/BranchValidator/labels/workflow |
Code Doc Changes |
📑documentation/code
|
Product Doc Changes |
📝documentation/product
|
Priority Type | Label |
---|---|
Low Priority |
low priority
|
Medium Priority |
medium priority
|
High Priority |
high priority
|
Release Types | Label Used |
---|---|
Preview Release |
🚀Preview Release
|
Production Release |
🚀Production Release
|
Hot Fix Release |
🚀Hot Fix Release
|
Reasons for local unit test execution:
The version can be updated by setting the values of the <Version/>
and <FileVersion/>
XML tags in the project file.
<!--Syntax for preview releases-->
<Version>1.2.3-preview.4</Version>
<FileVersion>1.2.3-preview.4</FileVersion>
<!--Syntax for production releases-->
<Version>1.2.3</Version>
<FileVersion>1.2.3</FileVersion>
The release notes go into the appropriate folder:
Release note file names must follow a particular syntax and are in markdown format so they can be added to the release.
Changes such as release notes and version updates should be committed to the same source branch in the pull request attached to this issue.
The release is performed by running one of the release workflows below:
Remove repo specific docs that exist at the org level.
Update link in READme to point to the org level contribution document.
No response
No response
Change Type | Label |
---|---|
Bug Fixes | 🐛bug |
Breaking Changes | 🧨breaking changes |
New Feature | ✨new feature |
Workflow Changes | workflow |
Code Doc Changes | 🗒️documentation/code |
Product Doc Changes | 📝documentation/product |
Priority Type | Label |
---|---|
Low Priority | low priority |
Medium Priority | medium priority |
High Priority | high priority |
Update Preview Feature Template to match Velaptor:
File name is: preview-feature-pr-template.md
No response
No response
Change Type | Label |
---|---|
Bug Fixes |
🐛bug
|
Breaking Changes |
🧨breaking changes
|
New Feature |
✨new feature
|
Workflow Changes | https://github.com/KinsonDigital/BranchValidator/labels/workflow |
Code Doc Changes |
📑documentation/code
|
Product Doc Changes |
📝documentation/product
|
Priority Type | Label |
---|---|
Low Priority |
low priority
|
Medium Priority |
medium priority
|
High Priority |
high priority
|
Setup codecov for collecting code coverage data.
Also, add a codecov badge to the README file. Use the VersionMiner project for reference on the codecov.yml config file.
No response
No response
Change Type | Label |
---|---|
Bug Fixes | 🐛bug |
Breaking Changes | 🧨breaking changes |
New Feature | ✨new feature |
Workflow Changes | workflow |
Code Doc Changes | 🗒️documentation/code |
Product Doc Changes | 📝documentation/product |
Priority Type | Label |
---|---|
Low Priority | low priority |
Medium Priority | medium priority |
High Priority | high priority |
The label was changed but the link is still pointing to the old enhancement label. The old enhancement label was changed and this is how the link has become broken.
This issue is finished when:
No response
No response
Fix the release-todo-issue-template.yml
file by removing the backslash symbols from the checkbox label content for the top 2 checkboxes in the Perform Release ToDo List section.
- type: checkboxes
attributes:
label: Perform Release ToDo List
description: Complete the following items to perform a release.
options:
- - label: "Title updated by replacing the '**_\<TODO: release type here\>_**' section with the type of release."
+ - label: "Title updated by replacing the '**_<TODO: release type here>_**' section with the type of release."
- - label: "Title updated by replacing the '**_\<TODO: release version number here\>_**' section with the version number."
+ - label: "Title updated by replacing the '**_\<TODO: release version number here\>_**' section with the version number."
No response
No response
Change Type | Label |
---|---|
Bug Fixes |
🐛bug
|
Breaking Changes |
🧨breaking changes
|
New Feature |
✨new feature
|
Workflow Changes | https://github.com/KinsonDigital/BranchValidator/labels/workflow |
Code Doc Changes |
📑documentation/code
|
Product Doc Changes |
📝documentation/product
|
Priority Type | Label |
---|---|
Low Priority |
low priority
|
Medium Priority |
medium priority
|
High Priority |
high priority
|
Do the following:
No response
No response
Change Type | Label |
---|---|
Bug Fixes | 🐛bug |
Breaking Changes | 🧨breaking changes |
New Feature | ✨new feature |
Workflow Changes | workflow |
Code Doc Changes | 🗒️documentation/code |
Product Doc Changes | 📝documentation/product |
Priority Type | Label |
---|---|
Low Priority | low priority |
Medium Priority | medium priority |
High Priority | high priority |
Fix the name of the file for the release notes for version v1.0.0-preview.3.
Currently, the name of the release notes file is Release-Notes-v1.0.0-preview.2 and should be Release-Notes-v1.0.0-preview.3.
No response
No response
Change Type | Label |
---|---|
Bug Fixes |
🐛bug
|
Breaking Changes |
🧨breaking changes
|
New Feature |
✨new feature
|
Workflow Changes | https://github.com/KinsonDigital/BranchValidator/labels/workflow |
Code Doc Changes |
📑documentation/code
|
Product Doc Changes |
📝documentation/product
|
Priority Type | Label |
---|---|
Low Priority |
low priority
|
Medium Priority |
medium priority
|
High Priority |
high priority
|
Improve the project's readme so the text in the What's the point? 🤷🏼 section is laid out better. Currently the way that the text is wrapping is making the layout all WONKY and difficult to read. The assumption is that the markdown is setup to force wrap the sentences instead of auto-wrapping the text.
Either way, it does not look great.
💡Use VSCode to view the rendered markdown with the approximately the same width as in the browser in the marketplace, and use this as a guide to layout the text.
Convert the action input example values to inline code blocks to emphasize what it should look like.
The text to convert are in the purple rectangles in the image below:
No response
No response
Change Type | Label |
---|---|
Bug Fixes |
🐛bug
|
Breaking Changes |
🧨breaking changes
|
New Feature |
✨new feature
|
Workflow Changes | https://github.com/KinsonDigital/BranchValidator/labels/workflow |
Code Doc Changes |
📑documentation/code
|
Product Doc Changes |
📝documentation/product
|
Priority Type | Label |
---|---|
Low Priority |
low priority
|
Medium Priority |
medium priority
|
High Priority |
high priority
|
Remove the ISSUE_TEMPLATE & PULL_REQUEST_TEMPLATE folders and all of its contents.
No response
No response
Change Type | Label |
---|---|
Bug Fixes |
🐛bug
|
Breaking Changes |
🧨breaking changes
|
New Feature |
✨new feature
|
Workflow Changes | https://github.com/KinsonDigital/BranchValidator/labels/workflow |
Code Doc Changes |
📑documentation/code
|
Product Doc Changes |
📝documentation/product
|
Priority Type | Label |
---|---|
Low Priority |
low priority
|
Medium Priority |
medium priority
|
High Priority |
high priority
|
Add both preview release note and production release note templates to the repo. Use Velaptor as a guide.
No response
No response
Change Type | Label |
---|---|
Bug Fixes |
🐛bug
|
Breaking Changes |
🧨breaking changes
|
New Feature |
✨new feature
|
Workflow Changes | https://github.com/KinsonDigital/BranchValidator/labels/workflow |
Code Doc Changes |
📑documentation/code
|
Product Doc Changes |
📝documentation/product
|
Priority Type | Label |
---|---|
Low Priority |
low priority
|
Medium Priority |
medium priority
|
High Priority |
high priority
|
Improve the GitHub console output by using some emojis.
For each step, add a ✔️ emoji at the beginning.
If the branch is valid, add the 🥳 emoji to the end.
If the branch is not valid, add the 😞 emoji to the end.
No response
No response
Change Type | Label |
---|---|
Bug Fixes | 🐛bug |
Breaking Changes | 🧨breaking changes |
New Feature | ✨new feature |
Workflow Changes | workflow |
Code Doc Changes | 🗒️documentation/code |
Product Doc Changes | 📝documentation/product |
Priority Type | Label |
---|---|
Low Priority | low priority |
Medium Priority | medium priority |
High Priority | high priority |
Remove all issue and pr templates.
They are now housed in .github, so they don't need to be in each project.
Remove config.yml
Remove funding.yml
Remove CODEOWNERS
No response
No response
Change Type | Label |
---|---|
Bug Fixes | https://github.com/KinsonDigital/Velaptor/labels/%F0%9F%90%9Bbug |
Breaking Changes | https://github.com/KinsonDigital/Velaptor/labels/%F0%9F%A7%A8breaking%20changes |
New Feature | https://github.com/KinsonDigital/Velaptor/labels/%E2%9C%A8new%20feature |
Workflow Changes | https://github.com/KinsonDigital/Velaptor/labels/workflow |
Code Doc Changes | https://github.com/KinsonDigital/Velaptor/labels/%F0%9F%93%91documentation%2Fcode |
Product Doc Changes | https://github.com/KinsonDigital/Velaptor/labels/%F0%9F%93%9Ddocumentation%2Fproduct |
Priority Type | Label |
---|---|
Low Priority | https://github.com/KinsonDigital/Velaptor/labels/low%20priority |
Medium Priority | https://github.com/KinsonDigital/Velaptor/labels/medium%20priority |
High Priority | https://github.com/KinsonDigital/Velaptor/labels/high%20priority |
We are in the process of rationalizing ReadMe across all GitHub Actions (GHA). This includes:
Making sure all sections are in this order:
What is it Section
Quick Note Section
Quick Example Section
What does it do? Section
Action Input/Output Section
-Remove table from Output and make a sentence
-Keep Input section, but make it align left
Contribution Section
Maintainers Section
License Section
[here](https://github.com/KinsonDigital/.github/blob/master/docs/CONTRIBUTING.md)
[here](https://github.com/sponsors/KinsonDigital)
No response
No response
Change Type | Label |
---|---|
Bug Fixes | 🐛bug |
Breaking Changes | 🧨breaking changes |
New Feature | ✨new feature |
Workflow Changes | workflow |
Code Doc Changes | 🗒️documentation/code |
Product Doc Changes | 📝documentation/product |
Priority Type | Label |
---|---|
Low Priority | low priority |
Medium Priority | medium priority |
High Priority | high priority |
Update code of conduct file. Use the file below:
code_of_conduct.md
This issue is finished when:
No response
No response
The LICENSE exists, but to maintain consistency, add .md to the file
No response
No response
Change Type | Label |
---|---|
Bug Fixes | 🐛bug |
Breaking Changes | 🧨breaking changes |
New Feature | ✨new feature |
Workflow Changes | workflow |
Code Doc Changes | 🗒️documentation/code |
Product Doc Changes | 📝documentation/product |
Priority Type | Label |
---|---|
Low Priority | low priority |
Medium Priority | medium priority |
High Priority | high priority |
Move all [assembly: InternalsVisibleTo("", AllInternalsVisible = true)]
attributes to the csproj file.
This can be done with the example below:
<ItemGroup>
<InternalsVisibleTo Include="$(AssemblyName)Tests" />
<InternalsVisibleTo Include="DynamicProxyGenAssembly2" />
</ItemGroup>
For more info on this if required, refer to this video
InternalsVisibleTo
attributes moved.No response
No response
Change Type | Label |
---|---|
Bug Fixes | 🐛bug |
Breaking Changes | 🧨breaking changes |
New Feature | ✨new feature |
Workflow Changes | workflow |
Code Doc Changes | 🗒️documentation/code |
Product Doc Changes | 📝documentation/product |
Priority Type | Label |
---|---|
Low Priority | low priority |
Medium Priority | medium priority |
High Priority | high priority |
Setup the CICD dotnet tool for the project.
This will require creating a .nuke directory with a parametes.json file as well as workflows.
Warning The prev-release.yml and prod-release.yml files need to be a little different than the generated ones.
The reason is because CICD does not have the ability to collect code coverage and we are waiting for a release to get that feature. Refer to the VersionMiner project as a reference to how it was setup.
No response
No response
Change Type | Label |
---|---|
Bug Fixes | 🐛bug |
Breaking Changes | 🧨breaking changes |
New Feature | ✨new feature |
Workflow Changes | workflow |
Code Doc Changes | 🗒️documentation/code |
Product Doc Changes | 📝documentation/product |
Priority Type | Label |
---|---|
Low Priority | low priority |
Medium Priority | medium priority |
High Priority | high priority |
Implement the KDActionUtils library. This is to replace the repetitive code that is used for all of the GitHub actions throughout the organization. This is to help simplify the actions and promote code reuse.
This issue is finished when:
No response
Change Type | Label |
---|---|
Bug Fixes |
🐛bug
|
Breaking Changes |
🧨breaking changes
|
New Features |
✨new feature
|
Workflow Changes | https://github.com/KinsonDigital/BranchValidator/labels/workflow |
Code Doc Changes |
📑documentation/code
|
Product Doc Changes |
📝documentation/product
|
Priority Type | Label |
---|---|
Low Priority |
low priority
|
Medium Priority |
medium priority
|
High Priority |
high priority
|
The release note template files are located in the incorrect location. These files need to be moved to the folder ~/Documentation/ReleaseNotes/
.
Currently they are located in ~/Documentation/ReleaseNotes/PreviewReleases/
.
This was accidentally missed in the issue below during the code review.
No response
No response
Change Type | Label |
---|---|
Bug Fixes | 🐛bug |
Breaking Changes | 🧨breaking changes |
New Feature | ✨new feature |
Workflow Changes | workflow |
Code Doc Changes | 🗒️documentation/code |
Product Doc Changes | 📝documentation/product |
Priority Type | Label |
---|---|
Low Priority | low priority |
Medium Priority | medium priority |
High Priority | high priority |
Refactor all of the unit test assertions to use the FluentAssertions library.
This will greatly cleanup the unit testing side of things and make the creation of unit tests easier.
ObservableFake.cs
- 15 linesAssertExtensions.cs
- 39 linesObservableTests.cs
- 121 linesObserverTests.cs
- 136 linesObserverUnsubscriberTests.cs
- 103 linesNo response
No response
Change Type | Label |
---|---|
Bug Fixes | 🐛bug |
Breaking Changes | 🧨breaking changes |
New Feature | ✨new feature |
Workflow Changes | workflow |
Code Doc Changes | 🗒️documentation/code |
Product Doc Changes | 📝documentation/product |
Priority Type | Label |
---|---|
Low Priority | low priority |
Medium Priority | medium priority |
High Priority | high priority |
Currently, the translation between the custom action glob matching syntax and regex syntax has an issue.
feature/setup-build-project
This was discovered when using the same code while playing around with Nuke build system framework.
Possible Solution:
Also, the RegexOptions.IgnoreCase
needs to NOT be used at all. Currently, if the value above had a 'Tfor the word
project` ad the end, it would still pass. Remove case sensitivity.
Remove the MatchType.
enum and its use case as well
globbingPattern
every time in the Match()
methodglobbingPattern
every time in the Match()
methodRegexOptions.IgnoreCase
argument for all RegEx.Match()
method callsNo response
No response
Change Type | Label |
---|---|
Bug Fixes | 🐛bug |
Breaking Changes | 🧨breaking changes |
New Feature | ✨new feature |
Workflow Changes | workflow |
Code Doc Changes | 🗒️documentation/code |
Product Doc Changes | 📝documentation/product |
Priority Type | Label |
---|---|
Low Priority | low priority |
Medium Priority | medium priority |
High Priority | high priority |
Update URL section of the markdown links in the README.md file to point to the twitter logo located in the .github org repo.
Here is the location of the logo.
The link URL section below is what you should update the URLs to https://raw.githubusercontent.com/KinsonDigital/.github/master/Images/twitter-logo-16x16.svg.
Note Usually it exists in the ./Documentation/Images/ folder
Note There should be 2 twitter logos to update. One for Calvin and one for Kristen and is located in the README.md file.
No response
No response
Change Type | Label |
---|---|
Bug Fixes | 🐛bug |
Breaking Changes | 🧨breaking changes |
New Feature | ✨new feature |
Workflow Changes | workflow |
Code Doc Changes | 🗒️documentation/code |
Product Doc Changes | 📝documentation/product |
Priority Type | Label |
---|---|
Low Priority | low priority |
Medium Priority | medium priority |
High Priority | high priority |
In the main README file, add information about running the action in windows vs ubuntu.
Use this markdown:
<div align="center"><h3 style="font-weight:bold">⚠️Quick Note⚠️</h3></div>
This GitHub action is built using C#/NET and runs in a docker container. If the job step for running this action is contained in a job that runs on **Windows**, you will need to move the step to a job that runs on **Ubuntu**. You can split up your jobs to fulfill `runs-on` requirements of the GitHub action. This can be accomplished by moving the step into it's own job. You can then route the action step outputs to the job outputs and use them throughout the rest of your workflow. For more information, refer to the Github documentation links below:
For more info on step and job outputs, refer to the GitHub documentation links below:
- [Defining outputs for jobs](https://docs.github.com/en/actions/using-jobs/defining-outputs-for-jobs)
- [Setting a step action output parameter](https://docs.github.com/en/actions/using-workflows/workflow-commands-for-github-actions#setting-an-output-parameter)
Update the action.yml
Update the name of the GitHub action from BranchValidator to Branch Validator. It simply needs a space between each word.
This can be done in the action.yml file. Refer to example below.
name: 'BranchValidator' 👈🏼 Update this here
description: 'Checks if a GIT branch name is valid.'
author: 'Calvin Wilkinson (KinsonDigital)'
branding:
icon: settings
color: purple
Create a status check workflow to validate branch name syntax. This will validate that the branch currently being used will not only be named correctly, but also have a context that makes sense.
Action Inputs:
branch-name
validation-logic
trim-from-start
(Added on 7-Jul-2022)
fail-when-not-valid
branch-name
Input:An action input named branch-name
should hold the name of the branch.
validation-logic
Input:The action input named validation-logic
should be a string that contains a combination of functions with AND and OR logic.
All functions will be case sensitive and will be camel cased. Functions can have 1 or more arguments. String arguments will require double quotes and numbers will can only be whole numbers. They all return bool
values of true
or false
.
trim-from-start
Input:The action input named 'trim-from-start' should be a string that contains the text that will be trimmed from the beginning of the branch name before the validation process begins. This will make it easier to remove 'string' values from the beginning of the branch in GitHub Actions when using the environment variables for branches such as github.base_ref
, github.head_ref
, and github.ref
For example, if the action input had the value v*.*.*-preview.*, then this would mean that any branch with the name would be required to start with the letter 'v', 3 periods, and contain the string "-preview." towards the end.
This way, if the branch name parts meet the criteria, they action would return the value of "true" which means the branch is valid.
Also, if the value of the action input could be a list of functions delimited by a && or ||. This would give the ability to perform boolean logic on the results of the functions. The && is for performing AND logic and the || is for performing OR logic. The logic is always processed in order from left to right.
Things to note:
Simple Examples:
branch-name
= master
validation-logic
= equalTo("master") || equalTo("develop")
Result: true
branch-name
= master
validation-logic
= equalTo("master") && equalTo("develop")
Result: false
Advanced Example:
branch-name
= v1.2.3-preview.4
validation-logic
= v#.#.#-preview.#
Result: true
This issue is finished when:
validation-logic
action inputtrue
if the branch is valid and false
if it is notfail-when-not-valid
is set to true
All functions implemented below:
equalTo(string value)
implementedisCharNum(int pos)
implementedisSectionNum(int startPos, string upToChar)
implementedisSectionNum(int startPos, int endPos)
implementedcontains(string value)
implementednotContains(string value)
implementedexistTotal(string value, int total)
implementedexistsLessThan(string value, int amount)
implementedexistsGreaterThan(string value, int amount)
implementedstartsWith(string value)
implementednotStartsWith(string value)
implementedendsWith(string value)
implementednotEndsWith(string value)
implementedstartsWithNum()
implementedendsWithNum()
implementedlenLessThan(int length)
implementedlenGreaterThan(int length)
implementedisBefore(string value, string after)
implementedisAfter(string value, string before)
implementedNo response
No response
Update preview feature release template with that of Velaptor
No response
No response
Change Type | Label |
---|---|
Bug Fixes |
🐛bug
|
Breaking Changes |
🧨breaking changes
|
New Feature |
✨new feature
|
Workflow Changes | https://github.com/KinsonDigital/BranchValidator/labels/workflow |
Code Doc Changes |
📑documentation/code
|
Product Doc Changes |
📝documentation/product
|
Priority Type | Label |
---|---|
Low Priority |
low priority
|
Medium Priority |
medium priority
|
High Priority |
high priority
|
Update dotnet and the lang to the latest versions.
The version as of the creation of this issue is v7.0
Update the cs proj file
<PropertyGroup>
<OutputType>Exe</OutputType>
- <TargetFramework>net6.0</TargetFramework>
+ <TargetFramework>net7.0</TargetFramework>
- <LangVersion>10.0</LangVersion>
+ <LangVersion>11.0</LangVersion>
<ImplicitUsings>enable</ImplicitUsings>
<Nullable>enable</Nullable>
<RootNamespace>GotNuget</RootNamespace>
<!--Update this for production and preview releases-->
<Version>0.1.0</Version>
<!--Update this for production and preview releases-->
<FileVersion>0.1.0</FileVersion>
<Authors>Calvin Wilkinson</Authors>
<Company>Kinson Digital</Company>
<Product>GotNuget</Product>
<Description>Custom GitHub action used to check if nuget.org contains a NuGet package of a particular version.</Description>
<Copyright>Copyright ©2022 Kinson Digital</Copyright>
</PropertyGroup>
Update the docker file:
Note This is located 👉🏼 ./Dockerfile
- # Set the base image as the .NET 6.0 SDK (this includes the runtime)
+ # Set the base image as the .NET 7.0 SDK (this includes the runtime)
- FROM mcr.microsoft.com/dotnet/sdk:6.0 as build-env
+ FROM mcr.microsoft.com/dotnet/sdk:7.0 as build-env
# Copy everything and publish the release (publish implicitly restores and builds)
COPY . ./
RUN dotnet publish ./GotNuget/GotNuget.csproj -c Release -o out --no-self-contained
# Label the container
LABEL maintainer="Calvin Wilkinson <[email protected]>"
LABEL repository="https://github.com/KinsonDigital/GotNuget"
LABEL homepage="https://github.com/KinsonDigital/GotNuget"
# Label as GitHub action
LABEL com.github.actions.name="Got Nuget"
# Relayer the .NET SDK, anew with the build output
- FROM mcr.microsoft.com/dotnet/sdk:6.0
+ FROM mcr.microsoft.com/dotnet/sdk:7.0
COPY --from=build-env /out .
ENTRYPOINT [ "dotnet", "/GotNuget.dll" ]
No response
No response
Change Type | Label |
---|---|
Bug Fixes | 🐛bug |
Breaking Changes | 🧨breaking changes |
New Feature | ✨new feature |
Workflow Changes | workflow |
Code Doc Changes | 🗒️documentation/code |
Product Doc Changes | 📝documentation/product |
Priority Type | Label |
---|---|
Low Priority | low priority |
Medium Priority | medium priority |
High Priority | high priority |
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.