Skip to content

Everything 1.5 sdk#4370

Draft
VictoriousRaptor wants to merge 6 commits intodevfrom
everything-1.5-sdk
Draft

Everything 1.5 sdk#4370
VictoriousRaptor wants to merge 6 commits intodevfrom
everything-1.5-sdk

Conversation

@VictoriousRaptor
Copy link
Contributor

@VictoriousRaptor VictoriousRaptor commented Mar 21, 2026

As Everything 1.5 is becoming more stable, we should consider using their new SDK to invoke it. Sadly it seems no nuget package for it yet so we have to implement our own solution.


Summary by cubic

Adds optional support for Everything 1.5 (SDK v3) in Flow.Launcher.Plugin.Explorer, with automatic fallback to 1.4. Adds result highlighting, improves fast-sort detection, and fixes missing results by using the 1.5 search APIs when available.

Summary of changes

  • Changed

    • Prefer Everything 1.5 (instance "1.5a") for fast-sort checks, “is Everything running” checks, search, and run-count updates; fall back to 1.4 if unavailable.
    • 1.5 search now sets search text, regex/match-path, hides result omissions, uses viewport offset/count, and requests highlighted name/path; legacy path unchanged and still uses Everything_*.
    • Sorting on 1.5 maps existing sort options to property IDs via Everything3_AddSearchSort; fast-sort detection uses Everything3_IsPropertyFastSort.
    • Fixed a P/Invoke to use DLL instead of hardcoded "Everything64.dll". IsExcludedFile now safely handles empty FullPath.
  • Added

    • Everything3.dll for x86/x64 (copied to output) and loading during plugin init.
    • Everything3ApiDllImport with 1.5 P/Invokes, connection to instance "1.5a", search state/result parsing (full path, type, run count), and highlighted name/path extraction to populate result highlight data.
  • Removed

    • No behavior removed. Replaced a hardcoded DllImport name with the existing DLL constant.
  • Memory usage

    • Minor increase from loading Everything3.dll. 1.5 searches allocate and free native search state and result lists per query; no persistent allocations.
  • Security

    • Loads unmanaged Everything3.dll from the plugin directory; same trust model as existing Everything.dll. Uses local IPC only; no new network or file-write surfaces.
  • Unit tests

    • No unit tests added.

Written for commit 9246dea. Summary will update on new commits.

@VictoriousRaptor VictoriousRaptor added this to the Future milestone Mar 21, 2026
@github-actions github-actions bot modified the milestones: Future, 2.2.0 Mar 21, 2026
@prlabeler prlabeler bot added the bug Something isn't working label Mar 21, 2026
@VictoriousRaptor VictoriousRaptor added enhancement New feature or request and removed bug Something isn't working labels Mar 22, 2026
@prlabeler prlabeler bot added the bug Something isn't working label Mar 22, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

30 min review bug Something isn't working enhancement New feature or request

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant