Compare commits

...
2 Commits
2 changed files with 29 additions and 26 deletions
+10 -10
View File
@@ -13,7 +13,7 @@
{
"name": "claude-mnemonic",
"description": "Persistent memory system for Claude Code - Go implementation with SQLite and ChromaDB vector search",
"version": "0.11.37",
"version": "0.11.43",
"author": {
"name": "lukaszraczylo",
"url": "https://github.com/lukaszraczylo"
@@ -23,25 +23,25 @@
"license": "MIT",
"homepage": "https://github.com/lukaszraczylo/claude-mnemonic",
"releases": {
"latest": "0.11.37",
"latest": "0.11.43",
"versions": {
"0.11.37": {
"releaseDate": "2026-02-11",
"0.11.43": {
"releaseDate": "2026-03-06",
"downloads": {
"darwin-arm64": {
"url": "https://github.com/lukaszraczylo/claude-mnemonic/releases/download/v0.11.37/claude-mnemonic_0.11.37_darwin_arm64.tar.gz",
"url": "https://github.com/lukaszraczylo/claude-mnemonic/releases/download/v0.11.43/claude-mnemonic_0.11.43_darwin_arm64.tar.gz",
"format": "tar.gz",
"sha256": "4f0fa6e2034a56baea3e506fc0697b43aba9393cf03fa560ab40cb9520ff804f"
"sha256": "b27df5f25e2fc57e34e09e42670ba782f240efa6b92865632a5f190e68b24f4d"
},
"linux-amd64": {
"url": "https://github.com/lukaszraczylo/claude-mnemonic/releases/download/v0.11.37/claude-mnemonic_0.11.37_linux_amd64.tar.gz",
"url": "https://github.com/lukaszraczylo/claude-mnemonic/releases/download/v0.11.43/claude-mnemonic_0.11.43_linux_amd64.tar.gz",
"format": "tar.gz",
"sha256": "f1138fba85ccfb49541f1c9b0401abd9028f216729cee6784ec0ad1c8f9dde83"
"sha256": "d4477529e0a99bcb496fdeeceaf75bcedb8f123b6e00172245586349a36a3e52"
},
"windows-amd64": {
"url": "https://github.com/lukaszraczylo/claude-mnemonic/releases/download/v0.11.37/claude-mnemonic_0.11.37_windows_amd64.zip",
"url": "https://github.com/lukaszraczylo/claude-mnemonic/releases/download/v0.11.43/claude-mnemonic_0.11.43_windows_amd64.zip",
"format": "zip",
"sha256": "e05227844ed0123b874285cdec5a365cd17f1a094537fb0309c00694e9c30289"
"sha256": "495b95dc2cc701f106463d9fa859f1815859234aa994398230f20584f403e8a5"
}
}
}
+19 -16
View File
@@ -194,29 +194,32 @@ download_release() {
fi
# Verify download integrity via checksum
local checksum_url="${download_url}.sha256"
local checksums_url="https://github.com/${GITHUB_REPO}/releases/download/${version}/checksums.txt"
info "Verifying download integrity..."
if curl -sSL -o "$tmp_dir/checksum.sha256" "$checksum_url" 2>/dev/null; then
if curl -fsSL -o "$tmp_dir/checksums.txt" "$checksums_url" 2>/dev/null; then
local expected_hash actual_hash
expected_hash=$(awk '{print $1}' "$tmp_dir/checksum.sha256")
if command -v shasum &> /dev/null; then
actual_hash=$(shasum -a 256 "$tmp_dir/release.${archive_ext}" | awk '{print $1}')
elif command -v sha256sum &> /dev/null; then
actual_hash=$(sha256sum "$tmp_dir/release.${archive_ext}" | awk '{print $1}')
expected_hash=$(grep "${archive_name}" "$tmp_dir/checksums.txt" | awk '{print $1}')
if [[ -z "$expected_hash" ]]; then
warn "Archive ${archive_name} not found in checksums.txt, skipping verification"
else
warn "No SHA256 tool found (shasum or sha256sum), skipping checksum verification"
actual_hash=""
fi
if [[ -n "$actual_hash" ]]; then
if [[ "$expected_hash" != "$actual_hash" ]]; then
error "Checksum verification failed! Expected: $expected_hash Got: $actual_hash"
if command -v shasum &> /dev/null; then
actual_hash=$(shasum -a 256 "$tmp_dir/release.${archive_ext}" | awk '{print $1}')
elif command -v sha256sum &> /dev/null; then
actual_hash=$(sha256sum "$tmp_dir/release.${archive_ext}" | awk '{print $1}')
else
warn "No SHA256 tool found (shasum or sha256sum), skipping checksum verification"
actual_hash=""
fi
if [[ -n "$actual_hash" ]]; then
if [[ "$expected_hash" != "$actual_hash" ]]; then
error "Checksum verification failed! Expected: $expected_hash Got: $actual_hash"
fi
success "Checksum verified"
fi
success "Checksum verified"
fi
else
warn "No checksum file available at $checksum_url, skipping verification"
warn "No checksum file available, skipping verification"
fi
info "Extracting archive..."
if [[ "$archive_ext" == "zip" ]]; then
if ! command -v unzip &> /dev/null; then