Skip to content

Commit dbb895d

Browse files
committed
fix(run): narrow Vix runtime detection for script fallback
2 parents 2690d94 + 097ca2a commit dbb895d

1 file changed

Lines changed: 101 additions & 8 deletions

File tree

src/commands/run/detail/ScriptProbe.cpp

Lines changed: 101 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -345,25 +345,118 @@ namespace vix::commands::RunCommand::detail
345345
auto has = [&](const char *s)
346346
{ return line.find(s) != std::string::npos; };
347347

348-
if (has("vix::") ||
349-
has("Vix::") ||
350-
has("using namespace vix") ||
351-
has("using namespace Vix") ||
352-
has("using vix::") ||
353-
has("using Vix::") ||
354-
has("#include <vix/") ||
355-
has("#include \"vix/"))
348+
const bool uses_vix_runtime_header =
349+
has("#include <vix.hpp>") ||
350+
has("#include \"vix.hpp\"") ||
351+
352+
has("#include <vix/core") ||
353+
has("#include \"vix/core") ||
354+
355+
has("#include <vix/async") ||
356+
has("#include \"vix/async") ||
357+
358+
has("#include <vix/cache") ||
359+
has("#include \"vix/cache") ||
360+
361+
has("#include <vix/crypto") ||
362+
has("#include \"vix/crypto") ||
363+
364+
has("#include <vix/io") ||
365+
has("#include \"vix/io") ||
366+
367+
has("#include <vix/log") ||
368+
has("#include \"vix/log") ||
369+
370+
has("#include <vix/middleware") ||
371+
has("#include \"vix/middleware") ||
372+
373+
has("#include <vix/net") ||
374+
has("#include \"vix/net") ||
375+
376+
has("#include <vix/os") ||
377+
has("#include \"vix/os") ||
378+
379+
has("#include <vix/p2p") ||
380+
has("#include \"vix/p2p") ||
381+
382+
has("#include <vix/p2p_http") ||
383+
has("#include \"vix/p2p_http") ||
384+
385+
has("#include <vix/process") ||
386+
has("#include \"vix/process") ||
387+
388+
has("#include <vix/sync") ||
389+
has("#include \"vix/sync") ||
390+
391+
has("#include <vix/webrpc") ||
392+
has("#include \"vix/webrpc") ||
393+
394+
has("#include <vix/websocket") ||
395+
has("#include \"vix/websocket");
396+
397+
const bool uses_vix_runtime_symbol =
398+
has("vix::App") ||
399+
has("Vix::App") ||
400+
401+
has("vix::serve") ||
402+
has("Vix::serve") ||
403+
404+
has("vix::core") ||
405+
has("Vix::core") ||
406+
407+
has("vix::async") ||
408+
has("Vix::async") ||
409+
410+
has("vix::cache") ||
411+
has("Vix::cache") ||
412+
413+
has("vix::crypto") ||
414+
has("Vix::crypto") ||
415+
416+
has("vix::io") ||
417+
has("Vix::io") ||
418+
419+
has("vix::log") ||
420+
has("Vix::log") ||
421+
422+
has("vix::middleware") ||
423+
has("Vix::middleware") ||
424+
425+
has("vix::net") ||
426+
has("Vix::net") ||
427+
428+
has("vix::os") ||
429+
has("Vix::os") ||
430+
431+
has("vix::p2p") ||
432+
has("Vix::p2p") ||
433+
434+
has("vix::process") ||
435+
has("Vix::process") ||
436+
437+
has("vix::sync") ||
438+
has("Vix::sync") ||
439+
440+
has("vix::webrpc") ||
441+
has("Vix::webrpc") ||
442+
443+
has("vix::websocket") ||
444+
has("Vix::websocket");
445+
446+
if (uses_vix_runtime_header || uses_vix_runtime_symbol)
356447
{
357448
f.usesVix = true;
358449
}
359450

360451
if (has("#include <vix/orm/") || has("#include \"vix/orm/") ||
452+
has("#include <vix/orm") || has("#include \"vix/orm") ||
361453
has("vix::orm") || has("using namespace vix::orm"))
362454
{
363455
f.usesOrm = true;
364456
}
365457

366458
if (has("#include <vix/db/") || has("#include \"vix/db/") ||
459+
has("#include <vix/db") || has("#include \"vix/db") ||
367460
has("vix::db") || has("using namespace vix::db"))
368461
{
369462
f.usesDb = true;

0 commit comments

Comments
 (0)