Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -12,7 +12,7 @@ run.ps1
# Root Level Files
*.readinglist.md
*.cheatsheet.md
*_cheatsheet.md
*.cheatsheet.md.ps1
reflog.md

# Ignore build output directories
Expand Down
303 changes: 162 additions & 141 deletions README.md

Large diffs are not rendered by default.

239 changes: 0 additions & 239 deletions api.guide.md

This file was deleted.

22 changes: 10 additions & 12 deletions contributor.guide.md
Original file line number Diff line number Diff line change
Expand Up @@ -5,17 +5,17 @@
- [Setup](#setup)
- [Source Files used in the Module](#source-files-used-in-the-module)
- [Module Build Process](#module-build-process)
- [Publishing `SqlQueryClass` Module to GitHub](#publishing-sqlqueryclass-module-to-github)
- [Publishing `GuiMyPS` Module to GitHub](#publishing-GuiMyPS-module-to-github)
- [Code Review and Feedback](#code-review-and-feedback)
- [Merge the Pull Request](#merge-the-pull-request)
- [Cleanup](#cleanup)
- [Publishing `SqlQueryClass` Module to PowerShell Gallery](#publishing-sqlqueryclass-module-to-powershell-gallery)
- [Publishing `GuiMyPS` Module to PowerShell Gallery](#publishing-GuiMyPS-module-to-powershell-gallery)

## Setup

- Uses SQL Express but should work with other SQL Databases with proper connection strings and credentials
- Requires VS Code
- For Contributors, Fork the [SqlQueryClass](https://github.com/BrooksV/SqlQueryClass) repository
- For Contributors, Fork the [GuiMyPS](https://github.com/BrooksV/GuiMyPS) repository
- Clone the repository or fork to local pc. I like using c:\git as my local repository folder. Subfolder $ProjectName will be created with the GitHub repository contents
- Install [Manjunath Beli's ModuleTools](https://github.com/belibug/ModuleTools) module as the module build process uses ModuleTools

Expand All @@ -29,8 +29,6 @@

- Public functions that are exported, are separate files in the .\src\public folder.
- Private functions that are local to the Module, are separate files in the .\src\private folder.
- - Class Definitions and Enums are not accessible outside of the Module and cannot be accessed directly like Public Functions are. This is a PowerShell limitation.
- - - Classes [SqlQueryDataSet] and [SqlQueryDataSetParms] and enum ResultType used in the Module are defined in file .\src\private\SqlQueryClass.ps1 file. The classes have properties and methods used to maintain a Database connections and result sets making it useful WPF Data binding.
- Resources are files and folders in the .\src\resources folder that needs to be included with the Manifest and Module

## Module Build Process
Expand All @@ -52,10 +50,10 @@
Invoke-MTBuild -Verbose
```

- - Outputs to the .\dist\SqlQueryClass folder
- - Combines the file contents of the files in Public and Private folder into .\dist\SqlQueryClass\SqlQueryClass.psd1 and exports the Public Functions
- - Generates the .\dist\SqlQueryClass\SqlQueryClass.psd1 Manifest file from the settings in .\project.json
- - Resources (.\src\resources) folder content is copied to .\dist\SqlQueryClass folder
- - Outputs to the .\dist\GuiMyPS folder
- - Combines the file contents of the files in Public and Private folder into .\dist\GuiMyPS\GuiMyPS.psd1 and exports the Public Functions
- - Generates the .\dist\GuiMyPS\GuiMyPS.psd1 Manifest file from the settings in .\project.json
- - Resources (.\src\resources) folder content is copied to .\dist\GuiMyPS folder
- Run the Pester Teats using Invoke-MTTest (Find-Module -Name ModuleTools)

1. Make corrections, repeat the build process.
Expand All @@ -64,7 +62,7 @@
- Upstream your branch.
- Create a Pull request.

## Publishing `SqlQueryClass` Module to GitHub
## Publishing `GuiMyPS` Module to GitHub

1. Stage and Commit Your Changes

Expand All @@ -85,7 +83,7 @@
```

1. Create a Pull Request on remote repository
- Go to [SqlQueryClass GitHub repository](https://github.com/BrooksV/SqlQueryClass)
- Go to [GuiMyPS GitHub repository](https://github.com/BrooksV/GuiMyPS)
- Click on "Compare & pull request" for your branch
- Provide a meaningful title and description for the PR
- Select the base branch (main) to merge into
Expand Down Expand Up @@ -118,7 +116,7 @@ git branch -d features/database-table-access

These steps will ensure your changes are integrated into the main branch and your repository remains organized.

## Publishing `SqlQueryClass` Module to PowerShell Gallery
## Publishing `GuiMyPS` Module to PowerShell Gallery

```powershell
$data = Get-MTProjectInfo
Expand Down
22 changes: 9 additions & 13 deletions project.json
Original file line number Diff line number Diff line change
@@ -1,23 +1,19 @@
{
"ProjectName": "SqlQueryClass",
"Description": "The SqlQueryClass module provides a set of functions and cmdlets for working with SQL databases. It includes functionality for connecting, executing SQL queries, and managing output as DataTable, DataAdapter, DataSet, SqlReader, or NonQuery result objects.",
"Version": "0.1.2",
"ProjectName": "GuiMyPS",
"Description": "Module helps in creating and running WPF GUI based PowerShell Applications.",
"Version": "0.0.1",
"Manifest": {
"Author": "Brooks Vaughn",
"PowerShellHostVersion": "5.1",
"GUID": "8375edbe-fb0f-4cb6-acb0-9964b45725c0",
"GUID": "b9f7d4c6-e924-4a7b-a117-e169dc71f010",
"Tags": [
"PowerShell",
"Database",
"SQL",
"SQLServer",
"SQLQuery",
"DataAdapter",
"DataSet",
"DataTable"
"WPF",
"XAML",
"GUI"
],
"ProjectUri": "https://github.com/BrooksV/SqlQueryClass",
"LicenseUri": "https://github.com/BrooksV/SqlQueryClass/blob/main/LICENSE"
"ProjectUri": "https://github.com/BrooksV/GuiMyPS",
"LicenseUri": "https://github.com/BrooksV/GuiMyPS/blob/main/LICENSE"
},
"Pester": {
"TestResult": {
Expand Down
Loading