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
81 changes: 55 additions & 26 deletions .github/workflows/automated-release-blog-post.yml
Original file line number Diff line number Diff line change
Expand Up @@ -214,8 +214,10 @@ jobs:
const filePath = path.join(process.cwd(), 'blog', fileName);

const firstTimers = contributors.filter((contributor) => contributor.isFirstTimer);
const contributorCount = contributors.length;
const firstTimerCount = firstTimers.length;

const contributorGrid = contributors.length
const contributorGrid = contributorCount
? contributors
.map((contributor) => {
const firstTimerBadge = contributor.isFirstTimer ? ' 🌟 **First-time contributor!**' : '';
Expand All @@ -224,9 +226,9 @@ jobs:
.join('\n')
: '- No contributor data was available for this release.';

const firstTimerHighlight = firstTimers.length
? `\n🎉 Special shoutout to our first-time contributors: ${firstTimers.map((c) => `@${c.login}`).join(', ')}.`
: '\nNo first-time contributors were detected in this release snapshot.';
const firstTimerHighlight = firstTimerCount
? `\n🎉 **A warm welcome to our first-time contributors!** ${firstTimers.map((c) => `[@${c.login}](https://github.com/${c.login})`).join(', ')} — your first contribution is now part of SHAFT's story. We're thrilled to have you on board!`
: '';

const extractScopeSummary = (markdownText) => {
const candidateLines = markdownText
Expand All @@ -240,43 +242,70 @@ jobs:
return 'This version focuses on improving developer productivity, strengthening runtime reliability, and making test design more expressive across common automation scenarios.';
}

return candidateLines.slice(0, 3).join(' ');
return candidateLines.slice(0, 5).map((line) => `- ${line}`).join('\n');
};

const scopeSummary = extractScopeSummary(releaseBody);

const communityStats = contributorCount
? `This release was made possible by **${contributorCount} amazing contributors** who have poured their time and expertise into making SHAFT better for everyone.${firstTimerCount ? ` Among them, **${firstTimerCount}** contributed for the very first time!` : ''}`
: 'This release was crafted with care by the SHAFT community.';

const blogPost = `---
slug: release-${safeTag}
title: SHAFT Release ${tag} Is Here
authors:
- name: ${author}
title: Release Author
url: https://github.com/${author}
image_url: https://github.com/${author}.png
tags: [shaft_engine, release, changelog]
---
slug: release-${safeTag}
title: "🚀 SHAFT ${tag}: What's New and Why You Should Upgrade Today"
authors: [autobot]
tags: [shaft_engine, release, changelog, test-automation, open-source]
---

Hey there, SHAFT community! 👋

A fresh release just dropped and it's packed with improvements you don't want to miss. **SHAFT_ENGINE ${tag}** is here, and whether you're a seasoned SHAFT user or just getting started, there's something in this release for you.

<!-- truncate -->

## ⚡ What Changed?

${scopeSummary}

${releaseUrl ? `👉 [View the full release on GitHub](${releaseUrl})` : ''}

## 📋 Changelog

${releaseBody}

## 🏆 Community Spotlight

# 🚀 SHAFT_ENGINE ${tag} Released
${communityStats}

## Introduction
Open source thrives because of people like these. Every bug fix, every feature, every review — it all counts.

We are excited to announce **SHAFT_ENGINE ${tag}**.
${contributorGrid}
${firstTimerHighlight}

${releaseUrl ? `Official release: ${releaseUrl}` : ''}
## 🚀 Get Started in Seconds

## Scope Summary
Upgrading is simple — just update your dependency version:

${scopeSummary}
\`\`\`xml
<dependency>
<groupId>io.github.shafthq</groupId>
<artifactId>SHAFT_ENGINE</artifactId>
<version>${tag.replace(/^v/i, '')}</version>
</dependency>
\`\`\`

## Official Changelog
## 💬 Join the Conversation

${releaseBody}
We'd love to hear what you think! Found a bug? Have an idea? Just want to say hi?

## Hall of Fame (Contributors)
- ⭐ [Star SHAFT on GitHub](https://github.com/ShaftHQ/SHAFT_ENGINE) — it helps more than you think
- 💡 [Start a Discussion](https://github.com/ShaftHQ/SHAFT_ENGINE/discussions) — share feedback or ideas
- 🐛 [Report an Issue](https://github.com/ShaftHQ/SHAFT_ENGINE/issues/new) — help us squash bugs faster
- 📖 [Read the Docs](https://shafthq.github.io/) — dive deeper into SHAFT

${contributorGrid}
${firstTimerHighlight}
`;
Thanks for being part of the SHAFT journey. Until the next release — happy testing! 🎯
`;

fs.mkdirSync(path.dirname(filePath), { recursive: true });
if (fs.existsSync(filePath)) {
Expand Down
56 changes: 40 additions & 16 deletions blog/2026-03-24-release-10.1.20260324.md
Original file line number Diff line number Diff line change
@@ -1,27 +1,25 @@
---
slug: release-10.1.20260324
title: SHAFT Release 10.1.20260324 Is Here
authors:
- name: github-actions[bot]
title: Release Author
url: https://github.com/github-actions[bot]
image_url: https://github.com/github-actions[bot].png
tags: [shaft_engine, release, changelog]
title: "🚀 SHAFT 10.1.20260324: What's New and Why You Should Upgrade Today"
authors: [autobot]
tags: [shaft_engine, release, changelog, test-automation, open-source]
---

# 🚀 SHAFT_ENGINE 10.1.20260324 Released
Hey there, SHAFT community! 👋

## Introduction
A fresh release just dropped and it's packed with improvements you don't want to miss. **SHAFT_ENGINE 10.1.20260324** is here, and whether you're a seasoned SHAFT user or just getting started, there's something in this release for you.

We are excited to announce **SHAFT_ENGINE 10.1.20260324**.
<!-- truncate -->

Official release: https://github.com/ShaftHQ/SHAFT_ENGINE/releases/tag/10.1.20260324
## ⚡ What Changed?

## Scope Summary
- Bump `jackson-datatype-jdk8` from 2.21.1 to 2.21.2
- Fix relative path resolution failing on Linux CI
- Bump `browserstack-java-sdk` from 1.55.0 to 1.56.0

Bump com.fasterxml.jackson.datatype:jackson-datatype-jdk8 from 2.21.1 to 2.21.2 by @dependabot[bot] in https://github.com/ShaftHQ/SHAFTENGINE/pull/2346 Fix relative path resolution failing on Linux CI (2347) by @MustafaAgamy in https://github.com/ShaftHQ/SHAFTENGINE/pull/2349 Bump com.browserstack:browserstack-java-sdk from 1.55.0 to 1.56.0 by @dependabot[bot] in https://github.com/ShaftHQ/SHAFTENGINE/pull/2348
👉 [View the full release on GitHub](https://github.com/ShaftHQ/SHAFT_ENGINE/releases/tag/10.1.20260324)

## Official Changelog
## 📋 Changelog

## What's Changed
* Bump com.fasterxml.jackson.datatype:jackson-datatype-jdk8 from 2.21.1 to 2.21.2 by @dependabot[bot] in https://github.com/ShaftHQ/SHAFT_ENGINE/pull/2346
Expand All @@ -36,7 +34,11 @@ Bump com.fasterxml.jackson.datatype:jackson-datatype-jdk8 from 2.21.1 to 2.21.2

**Full Changelog**: https://github.com/ShaftHQ/SHAFT_ENGINE/compare/10.1.20260319...10.1.20260324

## Hall of Fame (Contributors)
## 🏆 Community Spotlight

This release was made possible by **42 amazing contributors** who have poured their time and expertise into making SHAFT better for everyone.

Open source thrives because of people like these. Every bug fix, every feature, every review — it all counts.

- ![@MohabMohie](https://github.com/MohabMohie.png) [@MohabMohie](https://github.com/MohabMohie)
- ![@MahmoudElSharkawy](https://github.com/MahmoudElSharkawy.png) [@MahmoudElSharkawy](https://github.com/MahmoudElSharkawy)
Expand Down Expand Up @@ -83,4 +85,26 @@ Bump com.fasterxml.jackson.datatype:jackson-datatype-jdk8 from 2.21.1 to 2.21.2
- ![@AbdelrahmanFahd](https://github.com/AbdelrahmanFahd.png) [@AbdelrahmanFahd](https://github.com/AbdelrahmanFahd)
- ![@Abdelrhman-Ellithy](https://github.com/Abdelrhman-Ellithy.png) [@Abdelrhman-Ellithy](https://github.com/Abdelrhman-Ellithy)

No first-time contributors were detected in this release snapshot.

## 🚀 Get Started in Seconds

Upgrading is simple — just update your dependency version:

```xml
<dependency>
<groupId>io.github.shafthq</groupId>
<artifactId>SHAFT_ENGINE</artifactId>
<version>10.1.20260324</version>
</dependency>
```

## 💬 Join the Conversation

We'd love to hear what you think! Found a bug? Have an idea? Just want to say hi?

- ⭐ [Star SHAFT on GitHub](https://github.com/ShaftHQ/SHAFT_ENGINE) — it helps more than you think
- 💡 [Start a Discussion](https://github.com/ShaftHQ/SHAFT_ENGINE/discussions) — share feedback or ideas
- 🐛 [Report an Issue](https://github.com/ShaftHQ/SHAFT_ENGINE/issues/new) — help us squash bugs faster
- 📖 [Read the Docs](https://shafthq.github.io/) — dive deeper into SHAFT

Thanks for being part of the SHAFT journey. Until the next release — happy testing! 🎯
6 changes: 6 additions & 0 deletions blog/authors.yml
Original file line number Diff line number Diff line change
Expand Up @@ -33,3 +33,9 @@ kyrillos:
title: SHAFT_Engine maintainer
url: https://github.com/KyrillosNageh
image_url: https://github.com/KyrillosNageh.png

autobot:
name: AutoBot
title: SHAFT's AI-Powered Release Assistant
url: https://github.com/ShaftHQ/SHAFT_ENGINE
image_url: /img/autobot-avatar.svg
36 changes: 36 additions & 0 deletions static/img/autobot-avatar.svg
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading