microsoft / qsharp

Azure Quantum Development Kit, including the Q# programming language, resource estimator, and Quantum Katas
https://microsoft.github.io/qsharp/
MIT License
369 stars 73 forks source link

Surface a warning or error if `src/` does not contain any `.qs` files as direct children #1516

Open sezna opened 1 month ago

sezna commented 1 month ago

As of #1416, if you are using implicit namespaces and nesting all of your source files deeply in the project, in the same nested directory, e.g. project/src/Microsoft/Quantum/Canon.qs and project/src/Microsoft/Quantum/Diagnostics.qs, you will experience non-intuitive behavior where the namespace detected will only be the final segment of the path (Canon and Diagnostics), not the full path Microsoft.Quantum.___. We should detect this and throw an error or warning.

Adding this to the linter may be difficult as the linter currently only has access to the AST, HIR, and FIR. So, this will likely have to be an error originating from the parser itself.