From 3c065ae8390b18759d1f3005d020a8a655f98331 Mon Sep 17 00:00:00 2001 From: Marco Cavallo Date: Fri, 10 Apr 2026 17:32:39 +0200 Subject: [PATCH 1/6] chore: remove unused System.ServiceModel.Syndication dependency and add infra solution folder Closes #85 --- XPoster.sln | 8 ++++++++ src/XPoster.csproj | 1 - 2 files changed, 8 insertions(+), 1 deletion(-) diff --git a/XPoster.sln b/XPoster.sln index e45d464..19c5947 100644 --- a/XPoster.sln +++ b/XPoster.sln @@ -26,6 +26,13 @@ Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "docs", "docs", "{51F62806-2 docs\monitoring.md = docs\monitoring.md EndProjectSection EndProject +Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "infra", "infra", "{A3B4C5D6-E7F8-9012-AB34-CD56EF789012}" + ProjectSection(SolutionItems) = preProject + infra\README.md = infra\README.md + infra\main.bicep = infra\main.bicep + infra\main.bicepparam = infra\main.bicepparam + EndProjectSection +EndProject Global GlobalSection(SolutionConfigurationPlatforms) = preSolution Debug|Any CPU = Debug|Any CPU @@ -46,6 +53,7 @@ Global EndGlobalSection GlobalSection(NestedProjects) = preSolution {51F62806-2C94-4BC7-A69E-266C207AB893} = {02EA681E-C7D8-13C7-8484-4AC65E1B71E8} + {A3B4C5D6-E7F8-9012-AB34-CD56EF789012} = {02EA681E-C7D8-13C7-8484-4AC65E1B71E8} EndGlobalSection GlobalSection(ExtensibilityGlobals) = postSolution SolutionGuid = {9CCF3EE4-D229-4EAE-9A97-C48A6E280027} diff --git a/src/XPoster.csproj b/src/XPoster.csproj index 33e9825..aeed260 100644 --- a/src/XPoster.csproj +++ b/src/XPoster.csproj @@ -28,7 +28,6 @@ - From 6a49de174ae64700e13877ac6e2c65c109e1deb0 Mon Sep 17 00:00:00 2001 From: Marco Cavallo Date: Fri, 10 Apr 2026 17:35:38 +0200 Subject: [PATCH 2/6] docs: remove System.ServiceModel.Syndication from README and fix workflow reference --- README.md | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/README.md b/README.md index 7330f4a..da09a91 100644 --- a/README.md +++ b/README.md @@ -163,7 +163,6 @@ Dynamically selects the appropriate generator based on current time. - **ILogger** - Structured logging ### Utilities -- **System.ServiceModel.Syndication** - RSS parsing - **Microsoft.Extensions.Http** - HTTP client factory --- @@ -287,7 +286,7 @@ builder.Services.AddSingleton(sp => ### Option 1: GitHub Actions (Automated CI/CD) -The repository includes a GitHub Actions workflow (`.github/workflows/master_xposterfunction.yml`). +The repository includes a GitHub Actions workflow (`.github/workflows/ci.yml`). **Setup**: 1. Create a Function App in Azure Portal From 0b1a2e98014e93fe6d94819cc91d27c790e0199a Mon Sep 17 00:00:00 2001 From: Marco Cavallo Date: Fri, 10 Apr 2026 17:40:28 +0200 Subject: [PATCH 3/6] =?UTF-8?q?chore:=20fix=20infra=20solution=20folder=20?= =?UTF-8?q?=E2=80=94=20add=20all=20files=20and=20modules=20sub-folder?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- XPoster.sln | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/XPoster.sln b/XPoster.sln index 19c5947..44010db 100644 --- a/XPoster.sln +++ b/XPoster.sln @@ -33,6 +33,14 @@ Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "infra", "infra", "{A3B4C5D6 infra\main.bicepparam = infra\main.bicepparam EndProjectSection EndProject +Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "modules", "modules", "{B4C5D6E7-F8A9-0123-BC45-DE67FA890123}" + ProjectSection(SolutionItems) = preProject + infra\modules\function-app.bicep = infra\modules\function-app.bicep + infra\modules\key-vault.bicep = infra\modules\key-vault.bicep + infra\modules\monitoring.bicep = infra\modules\monitoring.bicep + infra\modules\storage.bicep = infra\modules\storage.bicep + EndProjectSection +EndProject Global GlobalSection(SolutionConfigurationPlatforms) = preSolution Debug|Any CPU = Debug|Any CPU @@ -54,6 +62,7 @@ Global GlobalSection(NestedProjects) = preSolution {51F62806-2C94-4BC7-A69E-266C207AB893} = {02EA681E-C7D8-13C7-8484-4AC65E1B71E8} {A3B4C5D6-E7F8-9012-AB34-CD56EF789012} = {02EA681E-C7D8-13C7-8484-4AC65E1B71E8} + {B4C5D6E7-F8A9-0123-BC45-DE67FA890123} = {A3B4C5D6-E7F8-9012-AB34-CD56EF789012} EndGlobalSection GlobalSection(ExtensibilityGlobals) = postSolution SolutionGuid = {9CCF3EE4-D229-4EAE-9A97-C48A6E280027} From da9d6d39962b34641b34764d977a36aa9d3f1981 Mon Sep 17 00:00:00 2001 From: Marco Cavallo Date: Fri, 10 Apr 2026 17:44:09 +0200 Subject: [PATCH 4/6] chore: add .github/workflows solution folders to sln --- XPoster.sln | 14 ++++++++++++++ 1 file changed, 14 insertions(+) diff --git a/XPoster.sln b/XPoster.sln index 44010db..6d08757 100644 --- a/XPoster.sln +++ b/XPoster.sln @@ -41,6 +41,18 @@ Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "modules", "modules", "{B4C5 infra\modules\storage.bicep = infra\modules\storage.bicep EndProjectSection EndProject +Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = ".github", ".github", "{C5D6E7F8-A9B0-1234-CD56-EF7890AB1234}" +EndProject +Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "workflows", "workflows", "{D6E7F8A9-B0C1-2345-DE67-FA8901BC2345}" + ProjectSection(SolutionItems) = preProject + .github\workflows\branch-cleanup.yml = .github\workflows\branch-cleanup.yml + .github\workflows\branch-naming.yml = .github\workflows\branch-naming.yml + .github\workflows\branch-protection.yml = .github\workflows\branch-protection.yml + .github\workflows\ci.yml = .github\workflows\ci.yml + .github\workflows\issue-management.yml = .github\workflows\issue-management.yml + .github\workflows\linkedin-token-reminder.yml = .github\workflows\linkedin-token-reminder.yml + EndProjectSection +EndProject Global GlobalSection(SolutionConfigurationPlatforms) = preSolution Debug|Any CPU = Debug|Any CPU @@ -63,6 +75,8 @@ Global {51F62806-2C94-4BC7-A69E-266C207AB893} = {02EA681E-C7D8-13C7-8484-4AC65E1B71E8} {A3B4C5D6-E7F8-9012-AB34-CD56EF789012} = {02EA681E-C7D8-13C7-8484-4AC65E1B71E8} {B4C5D6E7-F8A9-0123-BC45-DE67FA890123} = {A3B4C5D6-E7F8-9012-AB34-CD56EF789012} + {C5D6E7F8-A9B0-1234-CD56-EF7890AB1234} = {02EA681E-C7D8-13C7-8484-4AC65E1B71E8} + {D6E7F8A9-B0C1-2345-DE67-FA8901BC2345} = {C5D6E7F8-A9B0-1234-CD56-EF7890AB1234} EndGlobalSection GlobalSection(ExtensibilityGlobals) = postSolution SolutionGuid = {9CCF3EE4-D229-4EAE-9A97-C48A6E280027} From 69d60bcb4093073f4e74f70c5f1743185cadd024 Mon Sep 17 00:00:00 2001 From: Marco Cavallo Date: Fri, 10 Apr 2026 17:47:11 +0200 Subject: [PATCH 5/6] chore: remove redundant .github/workflows solution folders (VS shows them natively via GitHub Actions node) --- XPoster.sln | 14 -------------- 1 file changed, 14 deletions(-) diff --git a/XPoster.sln b/XPoster.sln index 6d08757..44010db 100644 --- a/XPoster.sln +++ b/XPoster.sln @@ -41,18 +41,6 @@ Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "modules", "modules", "{B4C5 infra\modules\storage.bicep = infra\modules\storage.bicep EndProjectSection EndProject -Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = ".github", ".github", "{C5D6E7F8-A9B0-1234-CD56-EF7890AB1234}" -EndProject -Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "workflows", "workflows", "{D6E7F8A9-B0C1-2345-DE67-FA8901BC2345}" - ProjectSection(SolutionItems) = preProject - .github\workflows\branch-cleanup.yml = .github\workflows\branch-cleanup.yml - .github\workflows\branch-naming.yml = .github\workflows\branch-naming.yml - .github\workflows\branch-protection.yml = .github\workflows\branch-protection.yml - .github\workflows\ci.yml = .github\workflows\ci.yml - .github\workflows\issue-management.yml = .github\workflows\issue-management.yml - .github\workflows\linkedin-token-reminder.yml = .github\workflows\linkedin-token-reminder.yml - EndProjectSection -EndProject Global GlobalSection(SolutionConfigurationPlatforms) = preSolution Debug|Any CPU = Debug|Any CPU @@ -75,8 +63,6 @@ Global {51F62806-2C94-4BC7-A69E-266C207AB893} = {02EA681E-C7D8-13C7-8484-4AC65E1B71E8} {A3B4C5D6-E7F8-9012-AB34-CD56EF789012} = {02EA681E-C7D8-13C7-8484-4AC65E1B71E8} {B4C5D6E7-F8A9-0123-BC45-DE67FA890123} = {A3B4C5D6-E7F8-9012-AB34-CD56EF789012} - {C5D6E7F8-A9B0-1234-CD56-EF7890AB1234} = {02EA681E-C7D8-13C7-8484-4AC65E1B71E8} - {D6E7F8A9-B0C1-2345-DE67-FA8901BC2345} = {C5D6E7F8-A9B0-1234-CD56-EF7890AB1234} EndGlobalSection GlobalSection(ExtensibilityGlobals) = postSolution SolutionGuid = {9CCF3EE4-D229-4EAE-9A97-C48A6E280027} From d157db80ca62abe65fb4654dc2a5a1fa0f0d5527 Mon Sep 17 00:00:00 2001 From: Marco Cavallo Date: Fri, 10 Apr 2026 17:53:58 +0200 Subject: [PATCH 6/6] ci: add chore/ prefix to branch naming validation --- .github/workflows/branch-naming.yml | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/.github/workflows/branch-naming.yml b/.github/workflows/branch-naming.yml index 9e6635b..fa8411d 100644 --- a/.github/workflows/branch-naming.yml +++ b/.github/workflows/branch-naming.yml @@ -29,7 +29,7 @@ jobs: return; } - const validPrefixes = ['feature/', 'fix/', 'hotfix/', 'docs/', 'refactor/', 'test/']; + const validPrefixes = ['feature/', 'fix/', 'hotfix/', 'docs/', 'refactor/', 'test/', 'chore/']; const isValid = validPrefixes.some(prefix => branch.startsWith(prefix)); if (!isValid) { @@ -39,6 +39,7 @@ jobs: `Examples:\n` + `- feature/add-mastodon-support\n` + `- fix/twitter-auth-error\n` + + `- chore/update-dependencies\n` + `- docs/update-readme` ); } else {