DOC-7089: Migrate content/operate/oss_and_stack/stack-with-enterprise/release-notes/ to render hooks - #4069
Merged
Conversation
…/release-notes/ to render hooks
Converts relref markdown links to canonical /content/<path>.md[#anchor]
plain links, and note/tip/warning callout shortcodes to native
> [!NOTE] blockquotes, across the 59 legacy module release-notes pages
(redistimeseries, redisearch, redisbloom, redisjson, redisgraph, redisce,
redisgears, redisstack). 34 of 59 files had shortcodes to convert.
Hand-fixed two cases the tool couldn't handle cleanly:
- redisgraph/redisgraph-2.8-release-notes.md: a list-nested {{<note>}}
lost its 4-space continuation indent on conversion (known tool
limitation), which would have de-nested the blockquote from its list
item. Restored the indent on every blockquote line; confirmed in the
built HTML that the callout div still renders inside the <li>.
- redisjson/redisjson-2.2-release-notes.md: a pre-existing malformed
relref — {{< relref ".../json" >}}active-active/) — relied on
relref's implicit trailing slash to accidentally produce a working
link to .../json/active-active/. The mechanical relref-to-plain
conversion dropped that implicit slash, producing a broken
.../jsonactive-active/ link and a new build warning. Rewrote it to
the canonical /content/.../json/active-active.md form used elsewhere
in the same file.
No malformed-relref-missing-parens instances (the unit-1 pattern) found
in this directory. The 13 files carrying a `<note>` substring turned out
on inspection to be matches of the compact {{<note>}} shortcode, not a
literal HTML <note> wrapper — no actual literal HTML note wrapper exists
anywhere in this directory, so nothing was left deliberately untouched
on that basis.
Verified with two full Hugo builds (clean origin/main baseline vs. this
branch) diffed via diff_rendered_hrefs.py, filtered to this directory:
0 href differences across all 60 rendered pages, and identical warning
counts (17) between baseline and converted builds.
Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
Contributor
Contributor
🧠 Redis MemoryFound 9 related items from repository history (4 new this commit):
Memory updated at e6b6d75 |
Contributor
dwdougherty
approved these changes
Sep 21, 2026
dwdougherty
left a comment
Collaborator
There was a problem hiding this comment.
There were a coupla malformed links in the source files and they need some patching up post-conversion. Otherwise, LGTM.
| - [#1385](https://github.com/RediSearch/RediSearch/pull/1385): Add index definition to `FT.INFO` response. | ||
| - [#1097](https://github.com/RediSearch/RediSearch/pull/1097): Add Hindi snowball stemmer. | ||
| - The `FT._LIST` command returns a list of all available indices. Note that this is a temporary command, as indicated by the `_` in the name, so it's not documented. We're working on a [`SCAN`]({{< relref "/commands/scan" >}}-like command for databases with many indexes. | ||
| - The `FT._LIST` command returns a list of all available indices. Note that this is a temporary command, as indicated by the `_` in the name, so it's not documented. We're working on a [`SCAN`](/commands/scan-like command for databases with many indexes. |
Collaborator
There was a problem hiding this comment.
Suggested change
| - The `FT._LIST` command returns a list of all available indices. Note that this is a temporary command, as indicated by the `_` in the name, so it's not documented. We're working on a [`SCAN`](/commands/scan-like command for databases with many indexes. | |
| - The `FT._LIST` command returns a list of all available indices. Note that this is a temporary command, as indicated by the `_` in the name, so it's not documented. We're working on a [`SCAN`](/commands/scan)-like command for databases with many indexes. |
| ### Features | ||
|
|
||
| In RedisTimeSeries, we are introducing a new data type that uses chunks of memory of fixed size for time series samples, indexed by the same [Radix Tree implementation](https://github.com/antirez/rax) as Redis Streams. With Streams, you can create a [capped stream]({{< relref "/commands/xadd" >}}, effectively limiting the number of messages by count. In RedisTimeSeries, you can apply a retention policy in milliseconds. This is better for time series use cases, because they are typically interested in the data during a given time window, rather than a fixed number of samples. | ||
| In RedisTimeSeries, we are introducing a new data type that uses chunks of memory of fixed size for time series samples, indexed by the same [Radix Tree implementation](https://github.com/antirez/rax) as Redis Streams. With Streams, you can create a [capped stream](/commands/xadd, effectively limiting the number of messages by count. In RedisTimeSeries, you can apply a retention policy in milliseconds. This is better for time series use cases, because they are typically interested in the data during a given time window, rather than a fixed number of samples. |
Collaborator
There was a problem hiding this comment.
Suggested change
| In RedisTimeSeries, we are introducing a new data type that uses chunks of memory of fixed size for time series samples, indexed by the same [Radix Tree implementation](https://github.com/antirez/rax) as Redis Streams. With Streams, you can create a [capped stream](/commands/xadd, effectively limiting the number of messages by count. In RedisTimeSeries, you can apply a retention policy in milliseconds. This is better for time series use cases, because they are typically interested in the data during a given time window, rather than a fixed number of samples. | |
| In RedisTimeSeries, we are introducing a new data type that uses chunks of memory of fixed size for time series samples, indexed by the same [Radix Tree implementation](https://github.com/antirez/rax) as Redis Streams. With Streams, you can create a [capped stream](/commands/xadd), effectively limiting the number of messages by count. In RedisTimeSeries, you can apply a retention policy in milliseconds. This is better for time series use cases, because they are typically interested in the data during a given time window, rather than a fixed number of samples. |
Both pre-existing links dropped straight from the {{< relref >}} shortcode
into trailing prose with no closing markdown-link paren, so they rendered
as literal text before this migration too. Applying dwdougherty's PR
suggestions directly.
Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
Contributor
Author
|
Thanks for spotting those, @dwdougherty - now fixed. |
This was referenced Sep 21, 2026
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
]({{< relref "X" >}})links to canonical/content/<path>.md[#anchor]plain links, and{{< note >}}/tip/warning/alert shortcodes (and{{% %}}percent form) to native> [!NOTE]etc. blockquotes, across all 59*.mdfiles undercontent/operate/oss_and_stack/stack-with-enterprise/release-notes/(unit 3 of 5 for DOC-7089).redisgraph/redisgraph-2.8-release-notes.md: a list-nested{{<note>}}lost its 4-space list-continuation indent on blockquote conversion (known tool limitation). Restored the indent on every blockquote line and confirmed in the built HTML that the callout<div>still renders inside its<li>, not as a top-level block.redisjson/redisjson-2.2-release-notes.md: a pre-existing malformed relref —{{< relref ".../json" >}}active-active/)— relied on relref's implicit trailing slash to accidentally produce a working link to.../json/active-active/. The mechanical conversion dropped that implicit slash, producing a broken.../jsonactive-active/link and a new build warning. Rewrote to the canonical/content/.../json/active-active.mdform used elsewhere in the same file.<note>...</note>wrapper to leave untouched. On inspection, those 13 matches were all the compact{{<note>}}shortcode form (correctly converted), not a literal HTML wrapper — no literal HTML<note>tag exists anywhere in this directory, before or after this change.Test plan
find content/operate/oss_and_stack/stack-with-enterprise/release-notes -name '*.md' | wc -l→ 59, unchanged before/after conversiongrep -rnE '\]\{\{[<%] *relref' ...→ 0 malformed relrefs found in this unitgrep -rnE '^[[:space:]]+\{\{[<%] *(note|tip|warning)' ...→ confirmed the one known redisgraph-2.8 instance, no othersorigin/mainbaseline vs. this branch), diffed viabuild/diff_rendered_hrefs.pyfiltered tooperate/oss_and_stack/stack-with-enterprise/release-notes: 0 href differences across 60 pages🤖 Generated with Claude Code
Note
Low Risk
Documentation-only link and callout formatting; no runtime or product behavior changes. Risk is limited to broken or shifted cross-links if canonical paths are wrong.
Overview
Migrates 59 release-notes markdown files under
content/operate/oss_and_stack/stack-with-enterprise/release-notes/away from Hugo render hooks toward plain markdown the new pipeline can handle.Internal links:
]({{< relref "..." >}})(and similar) are replaced with canonical paths like/content/.../*.mdand preserved#anchors, across RedisBloom, RediSearch, RedisJSON, RedisTimeSeries, RedisGraph, RedisGears, Redis CE, and Redis Stack notes.Callouts:
{{< note >}}/{{< warning >}}(and percent-form variants) become GitHub-style blockquotes (> [!NOTE],> [!WARNING], etc.).Hand fixes: Restored list indentation for a nested note in
redisgraph-2.8-release-notes.md, and corrected a broken Active-Active link inredisjson-2.2-release-notes.mdafter a malformed relref conversion.Reviewed by Cursor Bugbot for commit e6b6d75. Bugbot is set up for automated code reviews on this repo. Configure here.