TabbyML/tabby

Context provider sheduled jobs failing on Windows

Open

#4,104 opened on Apr 1, 2025

View on GitHub
 (1 comment) (0 reactions) (1 assignee)Rust (1,744 forks)batch import
bugfixed-in-next-releasegood first issue

Repository metrics

Stars
 (33,513 stars)
PR merge metrics
 (No merged PRs in 30d)

Description

Bug description

I'm using Git Context provider with Git URL parameter set to local folder as file://C:\repos\myproject Initial indexing job finished with success. Manual job execution via Run button in ui also goes well. But sheduled indexing jobs that executes every hour - all failing with same error.

[INFO]: Building source code index: file:///C:/repos/myproject [WARN]: Failed to refresh code index: Directory /C:/repos/myproject does not exist [INFO]: Job failed Directory /C:/repos/myproject does not exist

Info about my tabby version and setup

Tabby:

  • tabby version : tabby 0.26.0
  • tabby release asset: tabby_x86_x64-windows-msvc-cuda124.zip

GPU:

  • gpu name: NVIDEA GeForce RTX 4050 Laptop GPU
  • gpu driver version: 566.26
  • cuda version: 12.7

OS:

  • os edition: Windows 10 Enterprise LTSC
  • os version: 21H2
  • os build: 19044.5608

Additional context

I think there's some kind of windows\unix path conflict... The error appears in this file crates/tabby-index/src/code/repository.rs at line 86. But since initial and manual runs goes well I think there are error in sheduling module or somewhere else that handles repo path as unix path starts with /. I'm not a rust dev and don't have much free time to dive into your codebase so I hope you'll be able to fix this issue.

In my opinion for linux file path should be file:///home/repos/myproject or so and for windows it should be file://C:/repos/myproject or file://C:\repos\myproject without / after file://

I also tried to init git context provider using next strings as Git URL

  • file://C:\repos\myproject
  • file://C:\\repos\\myproject
  • file://C:/repos/myproject

And I remember correctly(I did it like a week ago) all worked with manual runs but / transorms into \\ and \\ transofms into \\\\ in tabby logs while \ transforms into / ...

Contributor guide