`Quasar App Extension "serve" is missing` error



  • Hey Quasarians,
    I’m struggling with a strange problem related with @quasar/cli or yarn/npm on Win10.
    Assume that you have command that runs quasar serve so when you run it via cmd (on Windows 10) it works, no issue.

    BUT when you add script to your project package.json that rusn quasar serve
    you get and error Quasar App Extension "serve" is missing... because it runs local quasar app not the global cli as it should.

    Test1:

    >where quasar
    C:\Users\user\AppData\Roaming\npm\bin\quasar
    C:\Users\user\AppData\Roaming\npm\bin\quasar.cmd
    
    # add "where" script to package.json (quasar project)
    # "scripts": { "where": "where quasar" }
    
    > npm/yarn run where
    C:\repos\some-quasar-poject\node_modules\.bin\quasar
    C:\repos\some-quasar-poject\node_modules\.bin\quasar.cmd
    C:\Users\user\AppData\Roaming\npm\bin\quasar
    C:\Users\user\AppData\Roaming\npm\bin\quasar.cmd
    

    Test2

    >quasar info
    Operating System - Windows_NT(10.0.16299) - win32/x64
    NodeJs - 12.13.1
    
    Global packages
      NPM - 6.12.1
      yarn - 1.19.2
      @quasar/cli - 1.0.3 <----------------------------------
      cordova - Not installed
    
    # add "info" script to package.json (quasar project)
    # "scripts": { "info": "quasar info" }
    
    > npm/yarn run info
    Operating System - Windows_NT(10.0.16299) - win32/x64
    NodeJs - 12.13.1
    
    Global packages
      NPM - 6.12.1
      yarn - 1.19.2
      @quasar/cli - undefined <------------------------------
      cordova - Not installed
    

    So "serve:test:coverage": "quasar serve test/jest/coverage/lcov-report/ --port 8788", ain’t gonna work 😞
    Shouldn’t global quasar cli come first?

    PATH without custom stuff so there are only npm and yarn

    C:\Users\user\AppData\Roaming\npm
    C:\Users\user\AppData\Local\Yarn\bin
    C:\Users\user\AppData\Roaming\npm\bin
    

    Edit:

    Reported on gh: https://github.com/quasarframework/quasar-testing/issues/97

    IMHO there should be an exception for serve in local quasar executable that runs cli command instead of local.