Skip to content

4. Developing and Testing

Florian Daloze edited this page Sep 2, 2025 · 1 revision

Develop in OdooLS

If you want to bring modifications to OdooLS, here are some tips on how to setup your environment and commands you should use:

  • All repositories (odoo-ls, odoo-ls-vscode, odoo-ls-pycharm,...) are designed to be placed next to each other in a single folder. All scripts and build tools assume that.
  • In our IDE, we always open each repository in separated root folders. First open odoo-ls folder, than Add Folder to Workspace and select odoo-ls-vscode repository. This way you will have all launch options from both.
  • You can run OdooLS by running cargo run, but you'll see that you'll end up with a blank window. By default the server running on stdio, as it is designed to be attached to an extension. You can use the TCP mode for debugging by using cargo run -- --use-tcp to achieve that. If you are using vscode, we already provided launch.json settings with LLDB on linux and cppvsdbg on windows.
  • Usually, running your extension (vscode/pycharm) in debug mode will try to connect to your extension with TCP, so you can debug it by running both OdooLS and you client in debug mode.

Run tests

Use cargo test to run OdooLS tests. Be sure that you downloaded typeshed by initalizing submodules.

Clone this wiki locally