quarto-dev / quarto-cli

Open-source scientific and technical publishing system built on Pandoc.
https://quarto.org
Other
3.95k stars 326 forks source link

Missing .css file after fresh install #3883

Closed jfb-h closed 1 year ago

jfb-h commented 1 year ago

Bug description

On a fresh install on Windows 10, I run into the following error when doing quarto check (or when trying to preview):

ERROR: NotFound: The system cannot find the file specified. (os error 2), remove 'C:\Users\Jakob\AppData\Local\quarto\sass\397ef2e52d54cf686e4908b90039e9db.css'

This seems to be the same error reported here and occurred both via the 1.2.313 MSI downloaded from the website as well as with an installation via winget, which seems to be a slightly older version.

Checklist

dragonstyle commented 1 year ago

Is there anything unusual about the environment / directory or the machine configuration? I've attempted to reproduce it locally, but I can't cause an error either using the Dev version or using the installed version. Any help reproducing would be appreciated!

jfb-h commented 1 year ago

Hm not that I know of, it is a regular Windows 10 system and I have access rights etc. Do you have any pointers on what to check, specifically?

dragonstyle commented 1 year ago

It's a long shot, but was wondering whether the paths referenced are perhaps hosted using an unusual file system or perhaps using a file synchornizing technology like Google Drive (we have some low level issues with file enumeration in these cases that we're still chasing down).

jfb-h commented 1 year ago

I copied the files in the referenced folder over from another system which didn't have any issues and now it works. Here are the missing files:

Mode                 LastWriteTime         Length Name
----                 -------------         ------ ----
-a----        01.01.2023     13:57         248080 397ef2e52d54cf686e4908b90039e9db.css
-a----        01.01.2023     13:57          66371 397ef2e52d54cf686e4908b90039e9db.css.map
-a----        09.09.2022     08:52           2501 debc5d5d77c3f9108843748ff7464032.css
-a----        09.09.2022     08:52            748 debc5d5d77c3f9108843748ff7464032.css.map
-a----        01.01.2023     13:57            240 index.json
bsureshkrishna commented 1 year ago

Same problem. Also with the earlier version of Quarto. Everything was working before ! I dont know what the Quarto version was, though.

No idea where I Can find these missing files

image
dragonstyle commented 1 year ago

Can you try cleaning that directory and remove all the css and json files? That is a cAche and it seems like we are likely pointing to a file in the index that doesn't exist in disk for some reason. I'm not sure how that would happen though...

bsureshkrishna commented 1 year ago

I reset my Windows and did a clean install, and the problem disappeared. Also the RStudio problem with crashing on "pick your R version" that others have reported also disappeared.

dragonstyle commented 1 year ago

Since we don’t have a good repro for this one, I’m going to close this for now…

jhconning commented 1 year ago

Sorry to see this issue closed.. I've faced the same problem on one Windows computer for months. Tried re-installing and suggestions here to no avail.

Is there some guidance on 'deep uninstalling' quarto, to try to get past this. Or maybe it's something about my environment?

quarto check

[>] Checking Quarto installation......OK
      Version: 1.2.335
      Path: C:\Users\jconn\AppData\Local\Programs\Quarto\bin
      CodePage: 1252

[>] Checking basic markdown render....OK

ERROR: NotFound: The system cannot find the file specified. (os error 2), remove 'C:\Users\jconn\AppData\Local\quarto\sass\397ef2e52d54cf686e4908b90039e9db.css'

update: For a thread on the several things I've tried already (with help from posit/quarto developers) see here

more info: possibly relevant (as this was asked above), I do use google drive file stream on my machine (quarto and the windows system are installed to the c:\ while the google drive files are mapped to an h:\ drive, so I don't think there should eb a problem).

dragonstyle commented 1 year ago

This is some kind of issue with our cache of compiled scss, though I still don't understand the root cause. That said, I think I understand this error itself (we are trying to recover from some other error and that recovery is itself failing!)- I am going to put something into address this and perhaps this will uncover some deeper issue.

I'll start a fresh pre-release build that should be ready in 10-15 minutes with the change to address the recovery error...

jhconning commented 1 year ago

I've downloaded pre-release build 1.3.271 (which I'm guessing is the new build you suggested)> Now I'm getting a different error:

 quarto check

[>] Checking versions of quarto binary dependencies...
      Pandoc version 3.1.1: OK
ERROR: Theme file compilation failed:

Error: Theme file compilation failed:

    at dartCommand (file:///C:/Users/jconn/AppData/Local/Programs/Quarto/bin/quarto.js:58293:15)
    at async checkVersions (file:///C:/Users/jconn/AppData/Local/Programs/Quarto/bin/quarto.js:108418:26)
    at async check (file:///C:/Users/jconn/AppData/Local/Programs/Quarto/bin/quarto.js:108375:13)
    at async Command.fn (file:///C:/Users/jconn/AppData/Local/Programs/Quarto/bin/quarto.js:108598:5)
    at async Command.execute (file:///C:/Users/jconn/AppData/Local/Programs/Quarto/bin/quarto.js:8437:13)
    at async quarto (file:///C:/Users/jconn/AppData/Local/Programs/Quarto/bin/quarto.js:127242:5)
    at async file:///C:/Users/jconn/AppData/Local/Programs/Quarto/bin/quarto.js:127260:9
dragonstyle commented 1 year ago

Ok I just added some additional debug information to try to better understand what the underlying issue is (will be available in the next 10 or so minutes in a new prerelease build). To see the additional output, you can using the command:

quarto check --log-level debug

There should be statements like:

[DART path]  :  some path
...

That will hopefully give us some better clues as to what is happening.

Thanks for your continued help debugging this - it has been very difficult to track down!

jhconning commented 1 year ago

Thanks for your dogged pursuit. Using 1.3.272 I get:

quarto check --log-level debug

[>] Checking versions of quarto binary dependencies...
      Pandoc version 3.1.1: OK
[DART path]   : C:\Users\jconn\AppData\Local\Programs\Quarto\bin\tools\dart-sass\sass.bat
[DART args]   : --version
[DART stdout] :
[DART stderr] :
ERROR: Theme file compilation failed:

Error: Theme file compilation failed:

    at dartCommand (file:///C:/Users/jconn/AppData/Local/Programs/Quarto/bin/quarto.js:58297:15)
    at async checkVersions (file:///C:/Users/jconn/AppData/Local/Programs/Quarto/bin/quarto.js:108422:26)
    at async check (file:///C:/Users/jconn/AppData/Local/Programs/Quarto/bin/quarto.js:108379:13)
    at async Command.fn (file:///C:/Users/jconn/AppData/Local/Programs/Quarto/bin/quarto.js:108602:5)
    at async Command.execute (file:///C:/Users/jconn/AppData/Local/Programs/Quarto/bin/quarto.js:8437:13)
    at async quarto (file:///C:/Users/jconn/AppData/Local/Programs/Quarto/bin/quarto.js:127246:5)
    at async file:///C:/Users/jconn/AppData/Local/Programs/Quarto/bin/quarto.js:127264:9
dragonstyle commented 1 year ago

Ok that is wild - it seems like for some reason we're getting an error status from the simple version check (not what I was expecting).

If you run that command manually, what happens?

C:\Users\jconn\AppData\Local\Programs\Quarto\bin\tools\dart-sass\sass.bat --version

I have no theories why that isn't working!

jhconning commented 1 year ago

I'm at work now (where Quarto runs fine), so I can't try that on my home machine until tonight. I'll report back then.

It is indeed strange. That machine is due for a clean Windows and other software install anyway --- it has been a long time. It does seem, from this thread, that a few others have had the problem, yet it does seem a rare error. Thanks again.

jhconning commented 1 year ago

Continuing with your debugging suggestions, strangely I get no output when I issue the sass.bat --version command:

(base) PS C:\Users\jconn\AppData\Local\Programs\Quarto\bin\tools\dart-sass> sass.bat --version

I did this from the Anaconda command prompt . I also did this from a windows powershell with same result. I notice now also that I cannot open a simple Windows command prompt (simple invokation of cmd.exe) -- it seems to open and immediately close. I'm not sure if these things are related, but it points to something likely broken in my Windows setup. I will do a Windows repair upgrade this weekend to see if that fixes things.

Thanks for your help.

cderv commented 1 year ago

I get no output when I issue the sass.bat --version command

That is indeed strange. I can get a version number by running this command.

I cannot open a simple Windows command prompt (simple invokation of cmd.exe) -- it seems to open and immediately close.

it seems something is indeed of with this cmd.exe call. Using bat file will rely on this running. that could explain.

You can check that you are not somehow overriding the cmd.exe with another program in PATH named the same

Try this in Powershell to chek

> gcm cmd.exe | Format-List

Name            : cmd.exe
CommandType     : Application
Definition      : C:\Windows\System32\cmd.exe
Extension       : .exe
Path            : C:\Windows\System32\cmd.exe
FileVersionInfo : File:             C:\Windows\System32\cmd.exe
                  InternalName:     cmd
                  OriginalFilename: Cmd.Exe.MUI
                  FileVersion:      10.0.22621.1409 (WinBuild.160101.0800)
                  FileDescription:  Interpréteur de commandes Windows
                  Product:          Système d’exploitation Microsoft® Windows®
                  ProductVersion:   10.0.22621.1409
                  Debug:            False
                  Patched:          False
                  PreRelease:       False
                  PrivateBuild:     False
                  SpecialBuild:     False
                  Language:         Français (France)

Just in case...

jhconning commented 1 year ago

Thanks. I seem to get essentially the same output as you did:

(base) PS C:\Users\jconn\AppData\Local\Programs\Quarto\bin\tools\dart-sass> gcm cmd.exe | Format-List

Name            : cmd.exe
CommandType     : Application
Definition      : C:\WINDOWS\system32\cmd.exe
Extension       : .exe
Path            : C:\WINDOWS\system32\cmd.exe
FileVersionInfo : File:             C:\WINDOWS\system32\cmd.exe
                  InternalName:     cmd
                  OriginalFilename: Cmd.Exe.MUI
                  FileVersion:      10.0.22621.1 (WinBuild.160101.0800)
                  FileDescription:  Windows Command Processor
                  Product:          Microsoft® Windows® Operating System
                  ProductVersion:   10.0.22621.1
                  Debug:            False
                  Patched:          False
                  PreRelease:       False
                  PrivateBuild:     False
                  SpecialBuild:     False
                  Language:         English (United States)
cderv commented 1 year ago

Yes it seems so. Older version only, but I don't think that is what is in play here.

I don't know why calling cmd.exe inside Powershell terminal would not open it correctly. 🤔

BB1464 commented 1 year ago

Please is there any solution to this issue yet? I am having the same problem also!!!

dragonstyle commented 1 year ago

We haven't managed to reproduce it but you could try removing the quarto/sass directory listed in the error- that directory is only a cache so is safe to remove...

mcanouil commented 1 year ago

Flagging this as "stale" since unable to reproduce so far.

dragonstyle commented 1 year ago

I believe that this is fixed here:

https://github.com/quarto-dev/quarto-cli/commit/55bbafd66326172bd63aea6d4d681d1b771951a3

Closing.