diff --git a/.github/workflows/pack.yml b/.github/workflows/pack.yml index a55b48f..d0a3337 100644 --- a/.github/workflows/pack.yml +++ b/.github/workflows/pack.yml @@ -21,7 +21,7 @@ jobs: with: dotnet-version: 8.0.x - name: Get global.json - uses: dgmjr-actions/download-global.json/releases/latest + uses: dgmjr-actions/download-global.json/@latest - name: Setup NuGet.exe for use with actions # You may pin to the exact commit or the version. # uses: NuGet/setup-nuget@296fd3ccf8528660c91106efefe2364482f86d6f diff --git a/LICENSE.md b/LICENSE.md deleted file mode 100644 index 1f22d72..0000000 --- a/LICENSE.md +++ /dev/null @@ -1,47 +0,0 @@ ---- -author: David G. Moore, Jr. -author_email: david@dgmjr.io -title: MIT License -license: MIT -created: 2023-01-09-07:05:28 -lastmod: 2023-01-11T02:45:34.204Z -tags: - - license - - IP - - copyright -categories: - - license - - IP - - copyright -keywords: - - license - - mit - - IP - - copyright -description: The MIT License -date: 2023-01-16T11:55:48.194Z -authors: - - justin -slug: mit-license ---- -# MIT License - -Copyright (c) 2022-2023 [David G. Moore, Jr.](mailto:david@dgmjr.io "Send David an email"), All Rights Reserved - -Permission is hereby granted, free of charge, to any person obtaining a copy -of this software and associated documentation files (the "Software"), to deal -in the Software without restriction, including without limitation the rights -to use, copy, modify, merge, publish, distribute, sublicense, and/or sell -copies of the Software, and to permit persons to whom the Software is -furnished to do so, subject to the following conditions: - -The above copyright notice and this permission notice shall be included in all -copies or substantial portions of the Software. - -THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE -AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER -LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, -OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE -SOFTWARE. diff --git a/global.json b/global.json deleted file mode 100644 index 1da89ba..0000000 --- a/global.json +++ /dev/null @@ -1,17 +0,0 @@ -{ - "msbuild-sdks": { - "Microsoft.Build.Traversal": "3.2.0", - "Microsoft.Build.CentralPackageVersions": "2.1.3", - "Microsoft.Build.NoTargets": "3.5.6", - "Microsoft.Build.Artifacts": "4.0.4", - "Microsoft.VisualStudio.SlnGen": "8.5.17", - "MSBuild.SolutionSdk": "0.1.0", - "MSBuild.SolutionSdk.SlnGen": "0.1.0", - "UsingsSdk": "0.0.1-Local", - "JustInTimeVersioningSdk": "0.0.1-Local", - "NuGetPush": "0.0.1-Local", - // "NuGetPush": "0.0.3", - "MetapackageSdk": "0.0.1-Local", - "DgmjrSdk": "0.0.1-Local" - } -} diff --git a/src/.vscode/settings.json b/src/.vscode/settings.json index 77740cd..4743c20 100644 --- a/src/.vscode/settings.json +++ b/src/.vscode/settings.json @@ -1,3 +1,3 @@ { - "dotnet.defaultSolution": "Dgmjr.Primitives.sln" + "dotnet.defaultSolution": "Dgmjr.Primitives.sln" } \ No newline at end of file diff --git a/src/Assets/Icon.png b/src/Assets/Icon.png new file mode 100644 index 0000000..715d0b3 Binary files /dev/null and b/src/Assets/Icon.png differ diff --git a/src/Assets/icon.png b/src/Assets/icon.png deleted file mode 100644 index 921b2b3..0000000 Binary files a/src/Assets/icon.png and /dev/null differ diff --git a/src/Build/ADefaultBuildConfiguration.props b/src/Build/ADefaultBuildConfiguration.props index 390433d..ace241c 100644 --- a/src/Build/ADefaultBuildConfiguration.props +++ b/src/Build/ADefaultBuildConfiguration.props @@ -14,6 +14,6 @@ Local;Debug;Staging;Release;Testing - Local + Local diff --git a/src/Build/AssemblyVersion.targets b/src/Build/AssemblyVersion.targets index e6e7ff7..2f46bdb 100644 --- a/src/Build/AssemblyVersion.targets +++ b/src/Build/AssemblyVersion.targets @@ -10,6 +10,20 @@ * License: MIT (https://opensource.org/licenses/MIT) --> + + + $(BuildDependsOn); + SetAssemblyVersion + + + $(RestoreDependsOn); + SetAssemblyVersion + + + $(GetPackageMetadataDependsOn); + SetAssemblyVersion + + $([System.Text.RegularExpressions.Regex]::Replace("$(PackageVersion)", "\-.*", "")).0 diff --git a/src/Build/Authors-Owners.targets b/src/Build/Authors-Owners.targets index 988b235..0357a66 100755 --- a/src/Build/Authors-Owners.targets +++ b/src/Build/Authors-Owners.targets @@ -22,17 +22,11 @@ - @(DistinctAuthorsFinal, ', ') - @(DistinctOwnersFinal, ', ') + @(DistinctAuthorsFinal, @(DistinctAuthorsFinal->Count() == 2 ? ' %26 ' : ', ')) + @(DistinctOwnersFinal, @(DistinctOwnersFinal->Count() == 2 ? ' %26 ' : ', ')) - - - diff --git a/src/Build/BuildConfigurations.props b/src/Build/BuildConfigurations.props index c0fa03d..b28aa2a 100755 --- a/src/Build/BuildConfigurations.props +++ b/src/Build/BuildConfigurations.props @@ -1,20 +1,22 @@ + + - - Local;Debug;Staging;Release;Testing - - + + Local;Debug;Staging;Release;Testing + + full false $(DefineConstants);TRACE;DEBUG;LOCAL @@ -22,7 +24,7 @@ true true true - + full false @@ -43,21 +45,15 @@ $(DefineConstants);DEBUG;STAGING embedded - true + true false false - $(DefineConstants);RELEASE;PRODUCTION portable - true + true false false - diff --git a/src/Build/Copyright.targets b/src/Build/Copyright.targets index 289c18e..3dbbd39 100755 --- a/src/Build/Copyright.targets +++ b/src/Build/Copyright.targets @@ -1,17 +1,18 @@ + Imported $(GetPackageMetadataDependsOn); SetPackageCopyright diff --git a/src/Build/DevelopmentDependencies.targets b/src/Build/DevelopmentDependencies.targets index 78c3a96..2fdb455 100644 --- a/src/Build/DevelopmentDependencies.targets +++ b/src/Build/DevelopmentDependencies.targets @@ -18,7 +18,7 @@ Condition="('$(Configuration)' == 'Testing' Or '$(Configuration)' == 'Local')" TreatAsPackageReference="true" /> - + - + + Imported - + + Imported $([System.Text.RegularExpressions.Regex]::Match($(GitVersionInformation), 'PackageVersion: (.*)').Groups[1].Value) diff --git a/src/Build/GlobalUsings.props b/src/Build/GlobalUsings.props index b281d15..b640c68 100644 --- a/src/Build/GlobalUsings.props +++ b/src/Build/GlobalUsings.props @@ -18,30 +18,30 @@ - + - - + + - - + + - + - - - + + + diff --git a/src/Build/ItemDefinitionGroups.props b/src/Build/ItemDefinitionGroups.props index 0edce3d..b14f245 100755 --- a/src/Build/ItemDefinitionGroups.props +++ b/src/Build/ItemDefinitionGroups.props @@ -13,6 +13,9 @@ + + + @@ -33,7 +36,7 @@ - + diff --git a/src/Build/NuGetizer.targets b/src/Build/NuGetizer.targets index fe42ff4..8938808 100755 --- a/src/Build/NuGetizer.targets +++ b/src/Build/NuGetizer.targets @@ -12,7 +12,7 @@ - + false diff --git a/src/Build/PackageIcon.props b/src/Build/PackageIcon.props old mode 100755 new mode 100644 index 9990a1a..c2c274a --- a/src/Build/PackageIcon.props +++ b/src/Build/PackageIcon.props @@ -1,17 +1,14 @@ - - - diff --git a/src/Build/PackageIcon.targets b/src/Build/PackageIcon.targets index 5b25cd7..0d830d1 100644 --- a/src/Build/PackageIcon.targets +++ b/src/Build/PackageIcon.targets @@ -11,15 +11,23 @@ --> - - - $(MSBuildProjectDirectory)/Icon.jpg - $(MSBuildProjectDirectory)/Icon.jpeg - $(MSBuildProjectDirectory)/Icon.png - $(MSBuildThisFileDirectory)../Assets/icon.png - - - - - + + $(MSBuildProjectDirectory)/Icon.jpg + $(MSBuildProjectDirectory)/Icon.jpeg + $(MSBuildProjectDirectory)/Icon.png + $(MSBuildThisFileDirectory)../Assets/Icon.png + + + + + + + + + Icon.png + Icon.jpg + Icon.jpeg + + + diff --git a/src/Build/PackageMetadata.props b/src/Build/PackageMetadata.props index 13a8c48..f4c6280 100755 --- a/src/Build/PackageMetadata.props +++ b/src/Build/PackageMetadata.props @@ -12,6 +12,7 @@ + Imported $(MSBuildProjectName) DGMJR-IO DGMJR-IO Core Libraries diff --git a/src/Build/PackageMetadata.targets b/src/Build/PackageMetadata.targets index d6ebad5..47af6bc 100755 --- a/src/Build/PackageMetadata.targets +++ b/src/Build/PackageMetadata.targets @@ -12,9 +12,10 @@ + Imported $(PackageId) - A package for $(PackageId) - $(Description) + A package for $(PackageId) + $(Description) diff --git a/src/Build/PackageProjectName.props b/src/Build/PackageProjectName.props index 88600b9..16a71aa 100644 --- a/src/Build/PackageProjectName.props +++ b/src/Build/PackageProjectName.props @@ -11,10 +11,11 @@ --> - - - + Imported + + + diff --git a/src/Build/PackageProjectName.targets b/src/Build/PackageProjectName.targets index 07774f8..b17c1e9 100644 --- a/src/Build/PackageProjectName.targets +++ b/src/Build/PackageProjectName.targets @@ -11,10 +11,11 @@ --> - - - + Imported + + + diff --git a/src/Build/PackageProjectUrl.props b/src/Build/PackageProjectUrl.props index 8f5f557..0bf8d78 100755 --- a/src/Build/PackageProjectUrl.props +++ b/src/Build/PackageProjectUrl.props @@ -11,7 +11,8 @@ --> - + + Imported $(GetPackageMetadataDependsOn); SetPackageProjectUrl diff --git a/src/Build/PackageProjectUrl.targets b/src/Build/PackageProjectUrl.targets index a5d243e..154f397 100755 --- a/src/Build/PackageProjectUrl.targets +++ b/src/Build/PackageProjectUrl.targets @@ -1,16 +1,20 @@ + + + Imported + https://docs.dgmjr.io/$([System.IO.Path]::GetFileNameWithoutExtension('$(RepositoryUrl)')) diff --git a/src/Build/PackageReadme.targets b/src/Build/PackageReadme.targets index 57ed759..8c42c4a 100755 --- a/src/Build/PackageReadme.targets +++ b/src/Build/PackageReadme.targets @@ -11,55 +11,60 @@ --> - - + obj/ $(MSBuildProjectDirectory)/README.md $(MSBuildProjectName).README.md $(MSBuildProjectDirectory)/$(IntermediateOutputPath)/$(PackageReadmeFile) + + + - ---; - title: $(Title); - lastmod: $(Date:yyyy-MM-dd-HH:mm:ss); - date: $(Date:yyyy-MM-dd-HH:mm:ss); - license: $(PackageLicenseExpression); - slug: $(MSBuildProjectName)-readme; - version: $(PackageVersion); - type: readme; authors:; - @(PackageAuthor->' - %(Initials);'); - description: $(Description); - categories:; - - documentation; - - readme; - tags:; - - readme; - - $(MSBuildProjectName); - @(PackageTag->' - %(Identity)'); - keywords:; - - $(MSBuildProjectName); - @(PackageTag->' - %(Identity)'); - ---; - ; - # $(MSBuildProjectName) README; - ; - This file is generated from the contents of the project file.; - ; - ## Package Description; - ; - $(Description); - +---; +title: $(Title); +lastmod: $(Date:yyyy-MM-dd-HH:mm:ss); +date: $(Date:yyyy-MM-dd-HH:mm:ss); +license: $(PackageLicenseExpression); +slug: $(MSBuildProjectName)-readme; +version: $(PackageVersion); +type: readme; authors:; + @(PackageAuthor->' - %(Initials);'); +description: $(Description); +keywords:; + - $(MSBuildProjectName); + @(PackageTag->' - %(Identity)'); +type: readme +---; +; +# $(MSBuildProjectName) README; +; +This file is generated from the contents of the project file.; +; +## Package Description; +; +$(Description); +; +## Getting Started; +; +## Prerequisites; +; +## Installation; +; +## Usage; +; +## Contributing; +; +## Versioning; - - - + @@ -87,7 +92,7 @@ - + diff --git a/src/Build/PackageTags.props b/src/Build/PackageTags.props index 53af7f1..cb0ed3e 100755 --- a/src/Build/PackageTags.props +++ b/src/Build/PackageTags.props @@ -1,17 +1,18 @@ + Imported $(GetPackageMetadataDependsOn); SetPackageTags diff --git a/src/Build/PackageTags.targets b/src/Build/PackageTags.targets index b3ccaa2..629690a 100755 --- a/src/Build/PackageTags.targets +++ b/src/Build/PackageTags.targets @@ -1,18 +1,20 @@ + - + + Imported @(PackageTag->Distinct(), ' ') $(PackageTags.ToLower()) diff --git a/src/Build/PackageVersionOverride.props b/src/Build/PackageVersionOverride.props index 1c508cd..de903ab 100644 --- a/src/Build/PackageVersionOverride.props +++ b/src/Build/PackageVersionOverride.props @@ -1,27 +1,37 @@ + - $(PackageVersionOverride) - $([System.Text.RegularExpressions.Regex]::Replace("$(PackageVersionOverride)", "\-.*", "")) - $([System.Text.RegularExpressions.Regex]::Replace("$(PackageVersionOverride)", "\-.*", "")) - $(PackageVersionOverride) + Imported + $(PackageVersionOverride) + $([System.Text.RegularExpressions.Regex]::Replace("$(PackageVersionOverride)", "\-.*", "")) + $([System.Text.RegularExpressions.Regex]::Replace("$(PackageVersionOverride)", "\-.*", "")) + $(PackageVersionOverride) - - $(InjectThisAssemblyProjectDependsOn); - GetPackageVersion; - GetPackageMetadata; - + + $(GetPackageMetadataDependsOn); + GetPackageVersionOverride; + + + $(GetPackageVersionDependsOn); + GetPackageVersionOverride; + + + $(InjectThisAssemblyProjectDependsOn); + GetPackageVersion; + GetPackageMetadata; + diff --git a/src/Build/PackageVersionOverride.targets b/src/Build/PackageVersionOverride.targets index 49b5066..ca0f090 100755 --- a/src/Build/PackageVersionOverride.targets +++ b/src/Build/PackageVersionOverride.targets @@ -12,28 +12,33 @@ - - $(PackageVersionOverride) - $([System.Text.RegularExpressions.Regex]::Replace("$(PackageVersionOverride)", "\-.*", "")) - $([System.Text.RegularExpressions.Regex]::Replace("$(PackageVersionOverride)", "\-.*", "")) - $(PackageVersionOverride) + + + Imported + + + $(PackageVersionOverride) + $([System.Text.RegularExpressions.Regex]::Replace("$(PackageVersionOverride)", "\-.*", "")) + $([System.Text.RegularExpressions.Regex]::Replace("$(PackageVersionOverride)", "\-.*", "")) + $(PackageVersionOverride) + + + diff --git a/src/Build/ReleaseNotes.targets b/src/Build/ReleaseNotes.targets index 7724495..9d16282 100644 --- a/src/Build/ReleaseNotes.targets +++ b/src/Build/ReleaseNotes.targets @@ -11,6 +11,7 @@ --> + Imported $([System.IO.Path]::GetFileNameWithoutExtension('$(GitRepositoryUrl)')) diff --git a/src/Build/RemoveDuplicatePackageReferences.targets b/src/Build/RemoveDuplicatePackageReferences.targets index 8cddc9c..494e12b 100644 --- a/src/Build/RemoveDuplicatePackageReferences.targets +++ b/src/Build/RemoveDuplicatePackageReferences.targets @@ -15,8 +15,9 @@ RemoveDuplicatePackageReferences;$(RestoreDependsOn) RemoveDuplicatePackageReferences;$(PackDependsOn) + RemoveDuplicatePackageReferences;$(BuildDependsOn) - + diff --git a/src/Build/SlnGen.props b/src/Build/SlnGen.props index 822cb7a..62604e2 100644 --- a/src/Build/SlnGen.props +++ b/src/Build/SlnGen.props @@ -15,33 +15,37 @@ false - - - - - - - - - - - - - + + + - + + - - - + + + + + + + + + + + + + + + - + + true tests src diff --git a/src/Build/TestingLocal.props b/src/Build/TestingLocal.props index 9abc282..c7d6260 100755 --- a/src/Build/TestingLocal.props +++ b/src/Build/TestingLocal.props @@ -11,22 +11,24 @@ --> - - 0.0.1-Local - 0.0.1-Local - - - - 0.0.1-Testing - 0.0.1-Testing - - + + + 0.0.1-Local + 0.0.1-Local + + + + 0.0.1-Testing + 0.0.1-Testing + + + diff --git a/src/Build/UserSecrets.props b/src/Build/UserSecrets.props index 4f9176c..9d70e34 100644 --- a/src/Build/UserSecrets.props +++ b/src/Build/UserSecrets.props @@ -12,6 +12,6 @@ - e6b186e0-e9c0-45e1-a0e0-caaf78d8b2d5 + e6b186e0-e9c0-45e1-a0e0-caaf78d8b2d5 diff --git a/src/Build/_aISMultitargeting.props b/src/Build/_aISMultitargeting.props new file mode 100644 index 0000000..cdb5995 --- /dev/null +++ b/src/Build/_aISMultitargeting.props @@ -0,0 +1,17 @@ + + + + + $('$(TargetFrameworks)' != '' And '$(TargetFramework)' == '') + + diff --git a/src/DgmjrSdk.csproj b/src/DgmjrSdk.csproj new file mode 100644 index 0000000..446c93e --- /dev/null +++ b/src/DgmjrSdk.csproj @@ -0,0 +1,48 @@ + + + + + true + eb008c4c-9c3a-4498-a19d-34a42b6e2ce1 + FAE04EC0-301F-11D3-BF4B-00C04F79EFBC + + + The DGMJR-IO SDK + The DGMJR-IO SDK is a collection of `.props` and `.targets` files that are used to build and package the DGMJR projects. + + netstandard1.0 + $(MSbuildProjectName) + preview + MSBuildSdk + true + true + true + $(NoWarn);MSB4011 + Icon.png + true + + + + + + + + + + + + + + + + diff --git a/src/DgmjrSdk.nuproj b/src/DgmjrSdk.nuproj deleted file mode 100644 index 49107d0..0000000 --- a/src/DgmjrSdk.nuproj +++ /dev/null @@ -1,37 +0,0 @@ - - - - - true - - - The DGMJR-IO SDK - The DGMJR-IO SDK is a collection of `.props` and `.targets` files that are used to build and package the DGMJR projects. - netstandard1.0;netstandard2.0;netstandard2.1;netcoreapp3.1;net6.0;net7.0;net8.0 - $(MSbuildProjectName) - preview - MSBuildSdk - true - true - true - - - - - - - - - - - diff --git a/src/DgmjrSdk.sln b/src/DgmjrSdk.sln index c2e902d..7faaf72 100644 --- a/src/DgmjrSdk.sln +++ b/src/DgmjrSdk.sln @@ -1,5 +1,6 @@ Microsoft Visual Studio Solution File, Format Version 12.00 -Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Solution Items", "Solution Items", "{B283EBC2-E01F-412D-9339-FD56EF114549}" +# Visual Studio Version 16 +Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Solution Items", "Solution Items", "{B283EBC2-E01F-412D-9339-FD56EF114549}" ProjectSection(SolutionItems) = preProject ..\..\..\..\Packages\Versions.props = ..\..\..\..\Packages\Versions.props ..\..\..\..\Packages\Versions.Local.json = ..\..\..\..\Packages\Versions.Local.json @@ -50,15 +51,35 @@ Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Solution Items", "Solution ..\..\..\..\Packages\Versions\PowerShell.props = ..\..\..\..\Packages\Versions\PowerShell.props EndProjectSection EndProject +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "DgmjrSdk", "DgmjrSdk.csproj", "{EB008C4C-9C3A-4498-A19D-34A42B6E2CE1}" +EndProject Global GlobalSection(SolutionConfigurationPlatforms) = preSolution + Local|Any CPU = Local|Any CPU + Debug|Any CPU = Debug|Any CPU + Testing|Any CPU = Testing|Any CPU + Staging|Any CPU = Staging|Any CPU + Production|Any CPU = Production|Any CPU + Release|Any CPU = Release|Any CPU EndGlobalSection GlobalSection(ProjectConfigurationPlatforms) = postSolution + {EB008C4C-9C3A-4498-A19D-34A42B6E2CE1}.Local|Any CPU.ActiveCfg = Local|Any CPU + {EB008C4C-9C3A-4498-A19D-34A42B6E2CE1}.Local|Any CPU.Build.0 = Local|Any CPU + {EB008C4C-9C3A-4498-A19D-34A42B6E2CE1}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {EB008C4C-9C3A-4498-A19D-34A42B6E2CE1}.Debug|Any CPU.Build.0 = Debug|Any CPU + {EB008C4C-9C3A-4498-A19D-34A42B6E2CE1}.Testing|Any CPU.ActiveCfg = Testing|Any CPU + {EB008C4C-9C3A-4498-A19D-34A42B6E2CE1}.Testing|Any CPU.Build.0 = Testing|Any CPU + {EB008C4C-9C3A-4498-A19D-34A42B6E2CE1}.Staging|Any CPU.ActiveCfg = Staging|Any CPU + {EB008C4C-9C3A-4498-A19D-34A42B6E2CE1}.Staging|Any CPU.Build.0 = Staging|Any CPU + {EB008C4C-9C3A-4498-A19D-34A42B6E2CE1}.Production|Any CPU.ActiveCfg = Local|Any CPU + {EB008C4C-9C3A-4498-A19D-34A42B6E2CE1}.Production|Any CPU.Build.0 = Local|Any CPU + {EB008C4C-9C3A-4498-A19D-34A42B6E2CE1}.Release|Any CPU.ActiveCfg = Release|Any CPU + {EB008C4C-9C3A-4498-A19D-34A42B6E2CE1}.Release|Any CPU.Build.0 = Release|Any CPU EndGlobalSection GlobalSection(SolutionProperties) = preSolution HideSolutionNode = FALSE EndGlobalSection GlobalSection(ExtensibilityGlobals) = postSolution - SolutionGuid = {08A577CB-9F39-46C3-99C1-158F5C258336} + SolutionGuid = {5A2B8373-C8BE-4758-BFEF-FF1FE55BD912} EndGlobalSection EndGlobal diff --git a/src/Directory.Build.props b/src/Directory.Build.props index 1fb22f1..ab678a5 100644 --- a/src/Directory.Build.props +++ b/src/Directory.Build.props @@ -11,12 +11,6 @@ --> - - - $(NoWarn); - MSB4011; - - @@ -29,6 +23,7 @@ + diff --git a/src/Directory.Build.targets b/src/Directory.Build.targets index 4a1801c..47a6cf1 100644 --- a/src/Directory.Build.targets +++ b/src/Directory.Build.targets @@ -13,4 +13,5 @@ + diff --git a/src/Icon.png b/src/Icon.png new file mode 100644 index 0000000..1d0622b Binary files /dev/null and b/src/Icon.png differ diff --git a/src/README.md b/src/README.md index e57db8a..eda7c9b 100644 --- a/src/README.md +++ b/src/README.md @@ -1,55 +1,71 @@ --- +title: DGMJR-IO SDK authors: - dgmjr -title: The DGMJR SDK -modified: 2023-01-09-06:51:33 -created: 2023-01-09-06:51:31 +type: readme +slug: dgmjr-io-sdk +project: shared +description: An SDK that sets a whole boatload of default values and does a shit ton of stuff automagically. +version: 0.0.1 +lastmod: 2023-07-14T07:49:58.705Z +date: 2023-07-14T07:49:16.139Z license: MIT -description: The DGMJR SDK is a collection of `.props` and `.targets` files that are used to build and package the DGMJR projects. -slug: readme-md -keywords: -- DGMJR-IO -- readme -- sdk -- msbuild -categories: -- documentation -- msbuild -- readme -- sdk ------ +------------ -# The DGMJR SDK +# DGMJR-IO SDK -The DGMJR SDK is a collection of `.props` and `.targets` files that are used to build and package the DGMJR-IO projects. +An SDK that sets a whole boatload of default values and does a shit ton of stuff automagically. -## Getting Started +# Getting Started -Create a `Directory.Build.props` file in the root of your project and add the following: +Put the following code in your `Directory.Build.props` file: ```xml - - - + ``` -Then create a `Directory.Build.targets` file in the same directory and add the following: +And put the following code in your `Directory.Build.targets` file: ```xml - - - + ``` -Then create (or alter) your `global.json` file to include the following: +And make sure to add the following to your `global.json` file: ```json -{ - "msbuild-sdks": { - "DgmjrSdk": "1.5.0[or-the-current-version]" - } +"msbuild-sdks":{ + "DgmjrSdk": "[the-current-version]" } ``` -Then build your project. It will have all of the Dgmjr SDK defaults. +Then compile and run your project and it will have all the DGMJR-IO SDK defaults. These include the following: + +## Item Definitions + +* `Author` - with `Initials` and `Email` metadata, which populate the `Authors` property of the MSBuild (and NuGet) project +* `Owner` - with `Initials` and `Email` metadata, which populate the `Owners` and `Copyright` properties of the MSBuild (and NuGet) project +* `PackageTag` - which concatenates all instances of it and populates the `PackageTags` property of the MSBuild (and NuGet) project +* `SourceCodeReference`, which behaves just like a `PackageReference` only it just pulls the `ContentFiles` and `Build` assets from the package +* `SourceGenerator`, which behaves just like a `PackageReference` only it just pulls the `Analyzers` and `Build` assets from the package +* `NoWarn`, which adds all instances to the `NoWarn` property + +## Targets + +* `EnsurePackageReadme`, which ensures the package contains a `README.md` file at the root; if not, it generates one from the `Title` and `Description` properties and embeds it into the NuGet package +* `EnsurePackageIcon`, which ensures the package contains an icon file; if theres no file named `Icon.(png/jpg/jpeg)` at the root, it will use a default icon +* `RemoveDuplicateUsings`, which removes any duplicate `Using` items from the project +* `PackageProjectName.targets` - a file that packages any file in the root directory named `[MSBuildProjectName].targets` into the `build` folder of the NuGet package +* `PackageProjectName.props` - a file that packages any file in the root directory named `[MSBuildProjectName].props` into the `build` folder of the NuGet package + +## Properties + +* `PackageVersionOverride`, which allows you to override the package version calculated by `MinVer` +* A default `UserSecrets` property + +# Miscellaneous + +* Assembly signing - ensures the assembly is signed by a key located in the `Assets` folder +* TestingLocal - Overrides the `AssemblyVersion` attribute to always be `0.0.1-Local` when the `Configuration` is set to `Local` +* + diff --git a/src/Sdk/Sdk.targets b/src/Sdk/Sdk.targets index 03363f0..e45ab56 100644 --- a/src/Sdk/Sdk.targets +++ b/src/Sdk/Sdk.targets @@ -16,8 +16,7 @@ true + true - diff --git a/src/icon.png b/src/icon.png deleted file mode 100644 index e1f5fd3..0000000 Binary files a/src/icon.png and /dev/null differ