Repository navigation
Conversation
AmirHossein-84
added a commit
to AmirHossein-84/DigUp
that referenced
this pull request
Oct 18, 2026
… localization - SQLite & Search Layer (PRs ARahim3#16, ARahim3#38, ARahim3#82, ARahim3#85, ARahim3#94, ARahim3#111): * StatementCache with sqlite3_reset statement recycling and reentrant transactions * PRAGMA mmap_size = 1GB, synchronous = NORMAL, cache_size = -64000 * Zero-copy row.copyBlob direct vector loading into searcher matrix halves * Unicode NFC normalization for cross-platform and CJK/accented file paths * Chunked IN queries with UNION ALL to eliminate N+1 roundtrips * CJK Han character detection, Han text budgeting, and Han-aware snippet generation * SIMD8<Float> acceleration in Math+Portable.swift without heap allocations * Float16Shim for Intel Mac x86_64 IEEE 754 binary16 compatibility - Crawler, Rules, Path Normalization & Extractors (PRs ARahim3#33, ARahim3#42, ARahim3#56, ARahim3#60, ARahim3#79, ARahim3#80, ARahim3#86, ARahim3#88, ARahim3#91, ARahim3#101, ARahim3#107, ARahim3#109, Issues ARahim3#67, ARahim3#97, ARahim3#105, ARahim3#127): * Fix Windows path slash/drive normalization in DirectoryWalk preventing 0-file crawl * Fix case-insensitive folder matching on Windows in FolderSelection * Fix Crawler to never treat user-selected search roots (e.g. ~) as project roots * Exclude secrets/keys (.env*, .pem, .kdbx, SSH keys, passwd) in Rules * Honor standard CACHEDIR.TAG 43-byte signature when crawling * Skip build/intermediate directories (.venv, target, .build, .next, dist, bin, obj) * Drop FileProvider download status lookups for 10-50x faster cloud folder crawls * OfficeText extractor for .xlsx, .pptx, .ods, .odp XML documents * Headless LibreOffice .doc extractor on Linux and local Notion SQLite workspace extractor * Safe typed CGPDFDictionaryGetString for PDF metadata preventing crashes * Preserve OCR keywords on image-only PDFs * Outlook PST reader utility crate in pst/ - Indexing Pipeline & Runtime (PRs ARahim3#49, ARahim3#53, ARahim3#62, ARahim3#64, ARahim3#71, ARahim3#72, ARahim3#114, Issue ARahim3#3): * Batched document text embeddings (up to 16 docs per pass) * Cumulative IndexProgress tracking across multi-pass indexing * DocumentCache for extracted chunks to prevent redundant file disk reads * Linux URLSession SIGABRT fix in FileFetcher * ImageLoader parallel prefetching and batched image embeddings * Apple Neural Engine CoreML video frame encoding support * Scoped incremental subtree sync when changed paths are known * Autoreleasepool wrapping in background worker extraction to eliminate memory leaks - Daemon, Lifecycle & Policies (PRs ARahim3#24, ARahim3#27, ARahim3#31, ARahim3#36, ARahim3#51, ARahim3#82, Issues ARahim3#22, ARahim3#68): * HelperRestartPolicy for clean stop/resume transitions * Backlog starvation recovery and --resume-pending in IndexService * Configurable indexing hours window policy * Opt-in Low Power Mode indexing to protect laptop thermals and battery * Win32 OpenProcess(SYNCHRONIZE) parent monitor to prevent zombie helpers on Windows * Correct 0-hit search behavior when all search roots are removed - UI, Cross-Platform Shell, Localization & Build (PRs ARahim3#15, ARahim3#20, ARahim3#37, ARahim3#39, ARahim3#58, ARahim3#65, ARahim3#74, ARahim3#81, ARahim3#84, ARahim3#112): * DigUpLocalization framework with en, zh-Hans, zh-Hant string catalogs * AppSearch engine and launcher for macOS App and Tauri desktop shells * KeyCommands and QuickLookController shared handling * Preserved search field text during IME composition * Search panel fade transitions and @observable code editor selection * Hardened build scripts with pinned SHA-256 vendor checksum verification
Nothing ran swift build/swift test on PRs, so regressions merged unverified (CONTRIBUTING.md asks for passing tests). Vendor/llama is cached by the same stamp build-llama.sh records, so PR jobs reuse it instead of rebuilding llama.cpp; ReferenceVectorTests (needs the model) is skipped on PRs.
- build-llama.sh: a no-logits patch that does not apply (after a TAG bump) was silently skipped while BUILD still stamped it as patched, caching an unpatched build forever; now it is an error (already-applied is tolerated). - build.sh: locate Sparkle.framework by pattern with a clear error instead of one hardcoded slice path; treat a blank .sign-id as absent; build both products in one swift build invocation. - release.sh: check the Sparkle key before the multi-minute build instead of after notarization; drop deprecated --deep and verify nested code explicitly; keep notarytool logs as release evidence; require APPCAST or SKIP_APPCAST so a DMG is never silently left off the update feed.
The f-string feed could contain unparseable XML (]]> in notes, raw <title>); it is now parsed before writing, ]]> is escaped, and DOWNLOAD_BASE defaults to the origin remote so forks get their own URLs. Read the feed with a context manager.
An empty screenshots glob handed xattr a literal pattern and aborted the script (nullglob now); make_media.sh falls back from Samantha to any en_US say voice; cp -c (APFS clones) falls back to plain cp elsewhere.
git commit -am would sweep any unrelated dirty file in the tap into the release commit.
text() failed the whole request on one bad input, contradicting the protocol docstring; it now retries the batch item by item like media(). A dead app now ends the worker quietly instead of with a BrokenPipeError traceback.
…nly one --product per run; the merged call built digup but not DigUpApp)
Owner
|
Thanks for this. I've added a CI workflow of my own and I'm taking three of the script fixes (the patch check, the key check, the appcast escaping) separately, so I'm closing the PR rather than merging the bundle. |
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.
Six commits from the repo review, all tooling (no Swift changes):
swift build+swift teston macOS 14 for PRs and main (Vendor/llama cached by the same stampbuild-llama.shrecords;ReferenceVectorTestsskipped on PRs since it needs the model), plus shellcheck + ruff on Ubuntu..sign-idtreated as absent;--deepdropped from release verification (nested code verified explicitly); Sparkle key checked before the long build; notarytool logs kept as evidence;APPCASTrequired (orSKIP_APPCAST=1).]]>escaped in notes, download base derived from the origin remote so forks get their own URLs.sayvoice fallback, non-APFScpfallback.Casks/digup.rb.text()retries failed batches per item (matches the protocol docstring), quiet exit on a broken pipe.Built and installed successfully on a MacBook Pro (Xcode 26.3) as part of the combined
fix/allbranch.Closes #44.