Skip to content

Conversation

@jd
Copy link
Member

@jd jd commented Oct 21, 2025

This implements a new changelog system to the docs so it's easy to
browse it and subscribe via RSS.

Fixes MRGFY-5981

@mergify mergify bot had a problem deploying to Mergify Merge Protections October 21, 2025 14:18 Failure
@mergify
Copy link
Contributor

mergify bot commented Oct 21, 2025

Merge Protections

Your pull request matches the following merge protections and will not be merged until they are valid.

🔴 🤖 Continuous Integration

This rule is failing.
  • all of:
    • check-success = build
    • check-success = lint
    • check-success = test
    • any of:
      • -head-repo-full-name~=^Mergifyio/
      • check-success=Cloudflare Pages
    • any of:
      • check-success = test-broken-links
      • label = ignore-broken-links

🔴 👀 Review Requirements

This rule is failing.
  • any of:
    • #approved-reviews-by >= 2
    • author = dependabot[bot]
    • author = mergify-ci-bot

🔴 🔎 Reviews

This rule is failing.
  • #review-requested = 0
  • #review-threads-unresolved = 0
  • #changes-requested-reviews-by = 0

🟢 Enforce conventional commit

Wonderful, this rule succeeded.

Make sure that we follow https://www.conventionalcommits.org/en/v1.0.0/

  • title ~= ^(fix|feat|docs|style|refactor|perf|test|build|ci|chore|revert)(?:\(.+\))?:

🟢 📕 PR description

Wonderful, this rule succeeded.
  • body ~= .{48,}

@jd jd force-pushed the devs/jd/changelog/Ia2551cf70a6317a02376c287da41230680a05be4 branch from 6ea2825 to feed624 Compare October 21, 2025 14:20
@mergify mergify bot had a problem deploying to Mergify Merge Protections October 21, 2025 14:20 Failure
@jd jd force-pushed the devs/jd/changelog/Ia2551cf70a6317a02376c287da41230680a05be4 branch from feed624 to 25de18e Compare October 21, 2025 14:36
@mergify mergify bot had a problem deploying to Mergify Merge Protections October 21, 2025 14:37 Failure
@jd jd force-pushed the devs/jd/changelog/Ia2551cf70a6317a02376c287da41230680a05be4 branch from 25de18e to 3da1e76 Compare October 21, 2025 14:40
@mergify mergify bot had a problem deploying to Mergify Merge Protections October 21, 2025 14:40 Failure
@mergify mergify bot requested a review from a team October 21, 2025 14:42
@mergify
Copy link
Contributor

mergify bot commented Oct 21, 2025

@jd this pull request is now in conflict 😩

@mergify mergify bot added the conflict label Oct 21, 2025
@jd jd force-pushed the devs/jd/changelog/Ia2551cf70a6317a02376c287da41230680a05be4 branch from 3da1e76 to 2b4b8c7 Compare October 24, 2025 15:40
@mergify mergify bot had a problem deploying to Mergify Merge Protections October 24, 2025 15:41 Failure
@mergify mergify bot removed the conflict label Oct 24, 2025
@jd jd force-pushed the devs/jd/changelog/Ia2551cf70a6317a02376c287da41230680a05be4 branch from 2b4b8c7 to 3af0637 Compare October 24, 2025 15:43
@mergify mergify bot had a problem deploying to Mergify Merge Protections October 24, 2025 15:43 Failure
@mergify
Copy link
Contributor

mergify bot commented Oct 27, 2025

@jd this pull request is now in conflict 😩

@mergify mergify bot added the conflict label Oct 27, 2025
This implements a new changelog system to the docs so it's easy to
browse it and subscribe via RSS.

Fixes MRGFY-5981

Change-Id: Ia2551cf70a6317a02376c287da41230680a05be4
@jd jd force-pushed the devs/jd/changelog/Ia2551cf70a6317a02376c287da41230680a05be4 branch from 3af0637 to 27c3b0f Compare November 5, 2025 08:10
@jd jd marked this pull request as ready for review November 5, 2025 08:10
Copilot AI review requested due to automatic review settings November 5, 2025 08:10
@mergify mergify bot removed the conflict label Nov 5, 2025
@mergify mergify bot had a problem deploying to Mergify Merge Protections November 5, 2025 08:11 Failure
Copy link

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull Request Overview

This PR adds a comprehensive changelog feature to the documentation site, allowing users to view and filter product updates directly within the docs.

  • Adds a new changelog content collection with schema validation for title, date, description, and tags
  • Implements utility functions for sorting, grouping, and formatting changelog entries
  • Creates both an index page with filtering/search and individual detail pages for each changelog entry
  • Integrates changelog into site navigation and updates internal links from external changelog

Reviewed Changes

Copilot reviewed 15 out of 17 changed files in this pull request and generated 3 comments.

Show a summary per file
File Description
src/util/changelog.ts Utility functions for sorting, grouping, and formatting changelog entries
src/pages/changelog/index.astro Main changelog page with search, filtering, and RSS subscription
src/pages/changelog/[slug].astro Individual changelog entry detail page
src/pages/changelog/rss.xml.ts RSS feed endpoint for changelog entries
src/content.config.ts Adds changelog collection schema with validation
src/components/Breadcrumbs.astro Adds breadcrumb support for changelog pages
src/layouts/MainLayout.astro Makes headings optional and adds breadcrumbTitle prop
src/components/Header/Header.astro Updates changelog link to internal page
src/components/Footer/footer.ts Updates footer changelog link to internal page
src/components/Button.astro Adds target prop with default '_blank'
src/components/Header/HeaderLink.astro Adds target prop support
src/content/navItems.tsx Adds changelog to navigation items
src/styles/index.css Adds no-counter class to exclude elements from auto-numbering
package.json Adds @astrojs/rss dependency
eslint.config.js Excludes changelog content from linting

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

Comment on lines +6 to +14
export function sortChangelog(
entries: CollectionEntry<'changelog'>[]
): CollectionEntry<'changelog'>[] {
return entries.sort((a, b) => {
const dateA = new Date(a.data.date);
const dateB = new Date(b.data.date);
return dateB.getTime() - dateA.getTime();
});
}
Copy link

Copilot AI Nov 5, 2025

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The sortChangelog function mutates the original array. Use entries.slice().sort() or [...entries].sort() to avoid side effects.

Copilot uses AI. Check for mistakes.

<MainLayout content={{ title, description, suppressTitle: false }}>
<div class="changelog-header">
<div class="search-wrap">
Copy link

Copilot AI Nov 5, 2025

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The search input should have an associated label element (even if visually hidden) in addition to aria-label for better accessibility support across all assistive technologies.

Suggested change
<div class="search-wrap">
<div class="search-wrap">
<label for="search" class="visually-hidden">Search changelog</label>

Copilot uses AI. Check for mistakes.
<span class="slack-text">Stay updated on Slack! Subscribe to get changelog updates in your workspace:</span>
</div>
<div class="slack-command">
<code id="slack-command-text">/feed subscribe https://docs.mergify.com/changelog/rss.xml</code>
Copy link

Copilot AI Nov 5, 2025

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The hardcoded URL 'https://docs.mergify.com' should use context.site or be derived from configuration to ensure consistency across environments.

Copilot uses AI. Check for mistakes.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Development

Successfully merging this pull request may close these issues.

1 participant