Releases: kato83/mayu
Releases · kato83/mayu
Release list
0.0.1-alpha.7
Changelog
- 1858223 Merge pull request #12 from kato83/feature/epss-bulk-upsert
- ca7b219 Merge pull request #13 from kato83/feature/async-ingest-api
- 2f3e8b3 feat: async ingest API with background execution
- 8f004c4 fix: remove unused get() method from activeRunners
- 2780416 perf: bulk upsert EPSS scores and add lightweight summary refresh
0.0.1-alpha.6
0.0.1-alpha.5
0.0.1-alpha.4
0.0.1-alpha.3
Changelog
- 9f29ea6 Merge branch 'refactor/split-main-go'
- 1266991 docs(steering): add audit command and SBOM packages to project.md
- 962222f feat: add mayu audit command for SBOM vulnerability analysis
- ccb0c40 fix: remove duplicate refreshSummary in DeltaImport
- 29d2639 perf: add index on osv_severity.affected_package_id
- 804b4eb refactor(cmd): split main.go into focused files
- 3dbbaef remove --db-url flag; use --config for database URL configuration
0.0.1-alpha.2
Changelog
- 496a3b0 Merge pull request #9 from kato83/refactor/new-schema-ingest
- ead759a add readme_pic01.jpg
- 19c796e chore(ui): replace sidebar footer with copyright notice
- 6f61e84 docs(api): update OpenAPI spec
- fd657d5 feat(ui): add external link cushion dialog
- 754d0ac feat(ui): add theme switcher (light/dark/system)
- f09970f feat(ui): make aliases clickable and improve severity separator
- f5a4bf4 feat(ui): merge purl filter into package field
- 885f937 feat(ui): show severity_worst~severity_best badges in vulnerability list
- 1ba018c feat: add 'unknown' severity filter for unscored vulnerabilities
- 26cab3a feat: add --year flag for NVD native ingest
- c3744f8 feat: add ASCII art banner to version and help commands
- be1067a feat: add YAML config file support
- d576686 feat: add migration, rewrite Search/Count, streaming summary refresh, CPE decomposition
- 703b9b2 feat: dynamic ecosystem dropdown from DB/API
- b705482 feat: improve vulnerability summary computation
- 6e5e55f feat: show severity_worst/severity_best badge on detail page
- bbf7210 feat: switch pagination from offset to cursor-based (keyset)
- 043458e fix(ci): upgrade goreleaser/goreleaser-action to v7
- 6fd9a22 fix(ui): enable browser back/forward for pagination
- ee1dd40 fix(ui): wrap long CVSS vector strings in severity section
- 1d557b1 fix: add RefreshSummary call in TestSearchWithSeverity integration test
- 47e9b77 fix: correct Mermaid ERD syntax PK_FK -> PK, FK
- 1df6fc9 fix: remove reference to dropped source column in nvd_test.go
- ec8193f fix: reorder osv_entry UPSERT before alias_sources INSERT (FK dependency)
- 5de52d9 fix: replace unconditional DELETE with ON CONFLICT to prevent deadlocks
- 950689d fix: resolve duplicate key error when Wolfi/Chainguard share CGA-* IDs
- e546cbe fix: resolve lint errors (staticcheck S1017, unused function)
- 0e9d438 fix: severity filter uses range overlap (severity_best <= level AND severity_worst >= level)
- c3fd10e fix: sort batch entries by canonical ID to prevent deadlocks
- eeb59bd fix: update integration tests for new alias_sources schema
- 5fb800f refactor(cvss): replace hand-rolled CVSS implementation with go-cvss
- bf447e7 refactor(ui): replace back link with breadcrumb navigation
- 9bdda1d refactor(ui): use tags for vulnerability list links
- 6c15937 refactor: remove --alias flag, unify ID search with aliases table
- b60cb23 refactor: rewrite ingest/store layer for new DB schema
- 550658f refactor: use vulnerability_summary severity level for CLI display
0.0.1-alpha.1
Changelog
- a8a15f6 Add MIT License to the project
- 47dd32c Merge pull request #1 from kato83/feature/enhance-search-cli
- 9c222c8 Merge pull request #2 from kato83/dependabot/go_modules/golang.org/x/crypto-0.52.0
- be7e845 Merge pull request #3 from kato83/fix/search-severity-cvss-vector
- 1ebddda Merge pull request #4 from kato83/feat/serve-command
- 6e47090 Merge pull request #5 from kato83/refactor/use-ecosystems-txt
- 525eb18 Merge pull request #6 from kato83/feature/epss-integration
- 3d701a0 Merge pull request #7 from kato83/feat/kev-integration
- 7f54e8f Merge remote-tracking branch 'origin/feature/lev-score'
- 974c2eb chore(deps): bump golang.org/x/crypto from 0.51.0 to 0.52.0
- fd18e6c feat(cli): show severity label alongside CVSS score
- f89e4a8 feat(ingest): show total entry count in progress during full import
- bf87e1c feat(ingest): update per-ecosystem sync_state on bulk import
- fe620c0 feat(store): show NVD/MITRE severity for non-OSV vulnerabilities
- 7332dc5 feat(ui): add Markdown rendering for vulnerability details
- 0a0fa77 feat(ui): add i18n support with Japanese translations
- 4e6d6fc feat(ui): display EPSS, KEV, and LEV data on vulnerability detail page
- 85764b8 feat: NVD JSON Feed 2.0 pipeline, CLI, and docs (Task 6, 7, 8)
- 5010f79 feat: add 'mayu migrate' subcommand with embedded migrations
- 97841e5 feat: add --file flag to ingest with GitHub Advisory auto-conversion
- 3a13e9a feat: add --purl flag to search command
- c0c4b0d feat: add /swagger endpoint with Scalar API reference UI
- 33caace feat: add CISA KEV (Known Exploited Vulnerabilities) catalog integration
- 3736760 feat: add DB schema migrations for OSV data (Task 3)
- 9aa7b2c feat: add EPSS (Exploit Prediction Scoring System) data integration
- c6e793b feat: add EPSS historical backfill for LEV computation
- a8fdc09 feat: add LEV (Likely Exploited Vulnerabilities) score computation
- 6d575e6 feat: add MITRE CVE ingest orchestrator and CLI integration
- d44bf39 feat: add MITRE CVE ingestion - model, fetcher, and migration
- 396d93b feat: add MITRE CVE parser and store
- d04b3c5 feat: add NVD JSON Feed 2.0 native import (model, migration, fetcher)
- 3c30b21 feat: add NVD parser and store layer (Task 4, Task 5)
- 8155d14 feat: add Web UI (Phase 5)
- 2c43445 feat: add fields param for lightweight search and SPA hosting
- 8e71e41 feat: add lefthook pre-commit hooks for go fmt and lint
- 5cee181 feat: add serve command with REST API and OpenAPI spec
- ec1adb2 feat: allow search without ecosystem parameter (show all)
- e08ec89 feat: define OSV Schema v1.8.0 Go model with reversibility (Task 2)
- caebb25 feat: dynamic ecosystem list from GCS and bulk all.zip import
- 66dda70 feat: embed Web UI into binary with build tag uiembed
- 937d15c feat: enhance CLI search with filters, output formats, and detail view
- a092687 feat: enrich --detail output with NVD/MITRE data (CVSS, CWE, SSVC, credits)
- 3194528 feat: implement CLI ingest command (Task 8)
- c7b73fe feat: implement CLI search command (Task 9)
- 13c9ce5 feat: implement GCS data fetcher with zip extraction and delta CSV (Task 5)
- 9a666f4 feat: implement OSV JSON parser with validation (Task 6)
- 95fd92f feat: implement PostgreSQL store layer with pgx stdlib (Task 4)
- 8ebf74c feat: initialize project structure and dev environment (Task 1)
- 55af55f feat: integrate ingestion pipeline - Fetcher → Parser → Store (Task 7)
- 30c1193 feat: resolve canonical vulnerability ID from CVE aliases
- 4e69d7c feat: sort vulnerability list by published date descending
- 0482483 feat: support NVD and Debian converted data sources
- 023d974 feat: track alias provenance and clean up stale aliases on reimport
- e660365 fix(ci): add pnpm allowBuilds for esbuild, lmdb, parcel/watcher, msgpackr-extract
- 6f65ee0 fix(ci): install pnpm before setup-node for cache resolution
- 5f2f00a fix(ci): resolve golangci-lint v2 QF1008 warnings and NVD summary COALESCE logic
- d816b32 fix(ci): upgrade pnpm/action-setup to v6
- 39830cb fix(ci): upgrade setup-node to v7, add pnpm cache
- 690f786 fix(ci): use packageManager field from package.json for pnpm version
- be76df8 fix(search): use canonical vulnerability ID instead of OSV ID in results
- f6f7e3c fix(security): harden fetcher and DB connection based on vuln assessment
- cab778b fix(test): update TestSearch expectations for CVE canonicalization
- 7d05c43 fix(ui): improve affected ranges display with event pairing
- 9457c04 fix(ui): map NVD metric source UUIDs to human-readable names
- 560bdfb fix(ui): override esbuild to >=0.28.1 to fix path traversal vulnerability
- 38e7a32 fix: allow [EMPTY] ecosystem in path segment validation
- f14d89b fix: compute CVSS base score from vector strings in search output
- 6085fc4 fix: correct TestFormatAliases expected value for truncation case
- 5311457 fix: deduplicate search results for merged vulnerabilities
- bfbde0e fix: eliminate httpClient data race in StreamTopLevelAllZip
- e4d0b41 fix: enable search for NVD/MITRE-only CVEs via vulnerabilities.id
- 1f1c0f1 fix: fall back to full import when modified_id.csv is not found
- 9f1ec1f fix: filter non-CVE files from MITRE zip (delta, deltaLog)
- 6d9b926 fix: handle MITRE baseline zip-in-zip structure
- 826db6b fix: handle migrate.Close() error return to satisfy errcheck
- 6bdbb19 fix: improve MITRE ingest progress display
- c79e462 fix: preserve .gitkeep in build-embed target
- 39e10f2 fix: prevent duplicate delta sync due to nanosecond precision loss
- 274767a fix: remove deprecated middleware.RealIP (SA1019)
- cb36272 fix: remove unused epssAPIDefaultLimit constant
- 9015f12 fix: resolve CI lint errors and upgrade GitHub Actions versions
- 2b1ab95 fix: resolve remaining errcheck lint issues
- d83e21a fix: restore existing tests and add unicode/utf8 import in main_test.go
- 1e984d9 fix: stream zip extraction to prevent OOM on large ecosystems
- dc6fe88 fix: use GitHub Releases API asset URLs directly for MITRE download
- e193fb5 fix: use NOW() for modified column in EPSS/KEV vulnerability upsert
- bdb8bf5 fix: use fmt.Fprintf instead of Write([]byte(fmt.Sprintf(...)))
- 42c4dea fix: use switch instead of if/else chain (staticcheck QF1003)
- c9e830a fix: use temp file for ZIP download to prevent OOM on large ecosystems
- 05c42de perf(store): replace OR condition with UNION ALL in ID/Alias search
- 7f8ad5d perf: add composite index and parallelize Count/Search queries
- 5e2aaab perf: parallelize ingest pipeline and add bulk INSERT
- 36afab5 refactor: address review feedback for serve command
- fc97c14 refactor: fetch ecosystem list from ecosystems.txt instead of GCS JSON API
- f2fde6d refactor: separate OSV tables, unify vulnerabilities master, externalize aliases
- cd641c3 refactor: use osv_id (TEXT) as osv_entries PK, remove surrogate BIGINT id
- 25e6336...