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
109 changes: 58 additions & 51 deletions .github/workflows/publish-release.yml
Original file line number Diff line number Diff line change
Expand Up @@ -172,7 +172,6 @@ jobs:
script: |
const fs = require('fs');
const diff = fs.readFileSync('/tmp/diff.txt', 'utf8');
const existingUpdates = fs.readFileSync('docs/vectoriadb/updates.mdx', 'utf8');
const releaseDate = new Date().toISOString().split('T')[0];
const version = process.env.VERSION;
const versionNum = version.replace('v', '');
Expand Down Expand Up @@ -231,51 +230,18 @@ jobs:
core.setOutput('changelog', result.changelog);
core.setOutput('has_card_mdx', result.cardMdx ? 'true' : 'false');

- name: Update CHANGELOG.md
if: ${{ inputs.dry_run != true && inputs.release_type == 'stable' && steps.ai_changelog.outputs.changelog }}
run: |
node -e "
const fs = require('fs');
const changelog = fs.readFileSync('CHANGELOG.md', 'utf8');
const newEntry = process.env.CHANGELOG_ENTRY;
const lines = changelog.split('\n');
const unreleasedIdx = lines.findIndex(l => l.startsWith('## [Unreleased]'));
let insertIdx = unreleasedIdx + 1;
while (insertIdx < lines.length && !lines[insertIdx].match(/^## \[\d/)) insertIdx++;
if (lines[insertIdx - 1].trim() !== '') { lines.splice(insertIdx, 0, ''); insertIdx++; }
lines.splice(insertIdx, 0, newEntry);
fs.writeFileSync('CHANGELOG.md', lines.join('\n'));
"
env:
CHANGELOG_ENTRY: ${{ steps.ai_changelog.outputs.changelog }}

- name: Update updates.mdx
if: ${{ inputs.dry_run != true && inputs.release_type == 'stable' && steps.ai_changelog.outputs.has_card_mdx == 'true' }}
run: |
node scripts/update-docs-changelog.mjs \
--version "v${{ steps.version.outputs.version }}" \
--version-minor "${{ steps.context.outputs.release_line }}" \
--card-mdx-file "/tmp/card-mdx.txt"

- name: Update package version
if: ${{ inputs.dry_run != true }}
run: |
npx nx release version "${{ steps.version.outputs.version }}" \
--projects=vectoriadb --git-tag=false --git-commit=false

- name: Commit version bump and docs
- name: Commit version bump
if: ${{ inputs.dry_run != true }}
run: |
if [ -n "$(git status --porcelain)" ]; then
git add -A
git commit -m "$(cat <<'EOF'
chore(release): v${{ steps.version.outputs.version }}

- Bump version to ${{ steps.version.outputs.version }}
- Update CHANGELOG.md
- Update docs/vectoriadb/updates.mdx
EOF
)"
git commit -m "chore(release): v${{ steps.version.outputs.version }}"
git push origin HEAD
fi

Expand Down Expand Up @@ -315,28 +281,69 @@ jobs:

echo "Created and pushed tag: $TAG"

- name: Prepare release body
id: release_body
env:
CHANGELOG: ${{ steps.ai_changelog.outputs.changelog }}
run: |
VERSION="${{ steps.version.outputs.version }}"
RELEASE_TYPE="${{ steps.version.outputs.release_type }}"
RELEASE_LINE="${{ steps.context.outputs.release_line }}"
BRANCH="${{ steps.context.outputs.branch }}"
IS_PRERELEASE="${{ steps.version.outputs.is_prerelease }}"

# Start building the release body
{
echo "## Release v${VERSION}"
echo ""
echo "**Release type:** ${RELEASE_TYPE}"
echo "**Release line:** ${RELEASE_LINE}.x"
echo "**Branch:** ${BRANCH}"
} > /tmp/release-body.md

# Add AI-generated changelog if available
if [ -f /tmp/card-mdx.txt ] && [ -s /tmp/card-mdx.txt ] && [ -n "$CHANGELOG" ]; then
echo "" >> /tmp/release-body.md
echo "$CHANGELOG" >> /tmp/release-body.md
fi

# Add installation section
{
echo ""
echo "### Installation"
echo ""
echo '```bash'
echo "npm install vectoriadb@${VERSION}"
echo '```'
} >> /tmp/release-body.md

# Add pre-release note if applicable
if [ "$IS_PRERELEASE" = "true" ]; then
echo "" >> /tmp/release-body.md
echo "> **Note:** This is a pre-release version." >> /tmp/release-body.md
fi

# Add Card MDX as hidden comment for docs sync (only for stable releases)
# NOTE: Content is sanitized to prevent --> from breaking the HTML comment.
# Consumer must reverse: replace "--&gt;" with "-->" after extraction.
if [ -f /tmp/card-mdx.txt ] && [ -s /tmp/card-mdx.txt ]; then
echo "" >> /tmp/release-body.md
echo "<!--" >> /tmp/release-body.md
echo "CARD_MDX_START" >> /tmp/release-body.md
sed 's/-->/--\&gt;/g' /tmp/card-mdx.txt >> /tmp/release-body.md
echo "CARD_MDX_END" >> /tmp/release-body.md
echo "-->" >> /tmp/release-body.md
fi

- name: Create GitHub Release
if: ${{ inputs.dry_run != true }}
uses: softprops/action-gh-release@v2
with:
tag_name: v${{ steps.version.outputs.version }}
name: v${{ steps.version.outputs.version }}
prerelease: ${{ steps.version.outputs.is_prerelease }}
generate_release_notes: true
body: |
## Release v${{ steps.version.outputs.version }}

**Release type:** ${{ steps.version.outputs.release_type }}
**Release line:** ${{ steps.context.outputs.release_line }}.x
**Branch:** ${{ steps.context.outputs.branch }}

### Installation

```bash
npm install vectoriadb@${{ steps.version.outputs.version }}
```

${{ steps.version.outputs.is_prerelease == 'true' && '> **Note:** This is a pre-release version.' || '' }}
generate_release_notes: false
body_path: /tmp/release-body.md
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}

Expand Down
53 changes: 0 additions & 53 deletions CHANGELOG.md

This file was deleted.

75 changes: 3 additions & 72 deletions docs/vectoriadb/updates.mdx
Original file line number Diff line number Diff line change
@@ -1,76 +1,7 @@
---
title: 'Updates'
title: "Updates"
description: "Changelog and release history for VectoriaDB"
slug: 'updates'
icon: 'sparkles'
mode: 'center'
icon: "clock-rotate-left"
---

<Update label="v2.1.x" description="January 2026" tags={["Releases"]}>
<Card
title="VectoriaDB v2.1.2: Documentation Enhancements"
href="https://github.com/agentfront/vectoriadb/releases/tag/v2.1.2"
cta="View full changelog"
>
**Feature** – Enhanced documentation layout.
- Added updates section and icons for better user guidance.
</Card>
</Update>


<Update label="v2.0.x" description="December 2025 - January 2026" tags={["Releases"]}>
<Card
title="VectoriaDB v2.0.2: Security hardening"
href="https://github.com/agentfront/vectoriadb/releases/tag/v2.0.2"
cta="View full changelog"
>
**ReDoS Vulnerability Fixes** – Hardened regex analyzer and namespace sanitizer against ReDoS attacks.
- Regex vulnerability detection now trims analyzed patterns to 500 characters
- Redis namespace sanitization bounds input prior to regex processing
- Precompiled `SAFE_PATTERNS` used for deterministic string operations

<Warning>
If you're using v2.0.0 or v2.0.1, upgrade to v2.0.2 immediately to patch security vulnerabilities.
</Warning>
</Card>




```bash
npm install @huggingface/transformers
```

<Update label="v1.0.0" description="November 2025" tags={["Releases"]}>
<Card
title="VectoriaDB v1.0.0: Initial release"
href="https://github.com/agentfront/vectoriadb/releases/tag/v1.0.0"
cta="View full changelog"
>
**Initial Release** – Production-ready in-memory vector database for semantic search.

- **In-Memory Vector Database**: Fast semantic search using cosine similarity
- **Offline Embeddings**: Local embedding generation via transformers.js
- **Type-Safe Metadata**: TypeScript generics for compile-time safety
- **HNSW Indexing**: Sub-millisecond queries for large datasets
- **Storage Adapters**: File, Redis, and Memory adapters for persistence
- **Namespace Support**: Multi-tenant isolation
- **Operational Guardrails**: Rate limits, batch validation, document size limits
- **Typed Error Classes**: Machine-readable error codes for programmatic handling
</Card>
</Update>

## GitHub Releases

For detailed release notes and download links, see the [GitHub Releases](https://github.com/agentfront/vectoriadb/releases) page.

## Related

<CardGroup cols={2}>
<Card title="Installation" icon="download" href="/vectoriadb/get-started/installation">
Get started with VectoriaDB
</Card>
<Card title="Migration Guide" icon="right-left" href="/vectoriadb/troubleshooting/faq">
Common migration questions
</Card>
</CardGroup>
{/* This file is auto-generated by docs sync from GitHub releases */}
75 changes: 0 additions & 75 deletions scripts/update-docs-changelog.mjs

This file was deleted.

Loading