question-mark
Stuck on an issue?

Lightrun Answers was designed to reduce the constant googling that comes with debugging 3rd party libraries. It collects links to all the places you might be looking at while hunting down a tough bug.

And, if you’re still stuck at the end, we’re happy to hop on a call to see how we can help out.

[Feature Request] Support Catkin Tools

See original GitHub issue
  • Windows: Windows 10 Enterprise Version 1909
  • Linux: Ubuntu 20.04.1 LTS (WSL) (uname -a: Linux *** 4.4.0-18362-Microsoft #1049-Microsoft Thu Aug 14 12:01:00 PST 2020 x86_64 x86_64 x86_64 GNU/Linux)
  • ROS 1: Noetic
  • ROS 2:

Version of the plugin: v0.6.4

Copy the Version information from the Help | About menu:

Version: 1.49.1 (system setup)
Commit: 58bb7b2331731bf72587010e943852e13e6fd3cf
Date: 2020-09-16T23:27:51.792Z
Electron: 9.2.1
Chrome: 83.0.4103.122
Node.js: 12.14.1
V8: 8.3.110.13-electron.0
OS: Windows_NT x64 10.0.18363

what is the bug

Under some circumstances, the ROS extensions selects the catkin_make build tools when catkin tools would be correct.

Repro steps

  1. Create ROS workspace
  2. Build with catkin_make
  3. Remove build and devel directories
  4. Build with catkin build
  5. Load ROS workspace in VS Code
  6. Open build tasks (Ctrl+Shift+B) and see catkin_make and catkin_make_isolated as if the workspace was recently build with catkin_make (obviously, catkin_make fails because the workspace was build with catkin build)

expected behavior

See catkin as build task

additional context

Currently, the extension detects the build tool by looking if the file .catkin_workspace (placed by catkin_make) or the directory .catkin_tools (placed by catkin build) exist. Both tools also place a file at devel/.built_by which contains the name of the build tool (catkin build or catkin_make).

(Bonus: Right now the names of the build tasks are very confusing. catkin_make: build executes catkin_make, catkin: make executes catkin build. The build task for catkin build should be catkin: build, catkin tools: build or catkin tools: make.)

Issue Analytics

  • State:open
  • Created 3 years ago
  • Comments:6 (3 by maintainers)

github_iconTop GitHub Comments

1reaction
FSundcommented, Mar 16, 2021

@stertingen There are two sets of Catkin utilities - the official utilities like catkin_make and the catkin tools. We do not test the latter. We have had many reports of it not working. Since it isn’t officially supported, this work item is about officially supporting it and testing.

From the marketplace page

The build system (e.g. catkin_make or catkin build) will automatically be confirmed from the hidden files associated with each system.

Has this been implemented, or is the marketplace text referring to something else?

0reactions
ooeyguicommented, Jul 13, 2021

Catkin tools is supported - https://github.com/ms-iot/vscode-ros/blob/master/src/build-tool/catkin-tools.ts. It looks like the check is currently not working.

Read more comments on GitHub >

github_iconTop Results From Across the Web

Migrating from catkin_make — catkin_tools 0.0.0 documentation
Most problems users will encounter when migrating from catkin_make to catkin build are due to hidden bugs in packages which previously relied on...
Read more >
catkin_tools Documentation - Catkin tools
Support for different build “profiles” in a single workspace ... While there are many more features in catkin_tools described in the rest of ......
Read more >
Build Packages — catkin_tools 0.0.0 documentation
The build verb is used to build one or more packages in a catkin workspace. Like most verbs, build is context-aware and can...
Read more >
Catkin Command Line Tools — catkin_tools 0.0.0 ...
This Python package provides command line tools for working with the catkin ... For more help on the usage of a particular verb,...
Read more >
Support for catkin tools? · Issue #2 · mikeferguson ... - GitHub
Nice package! I have already tried to do code coverage on ROS packages and I had to write some scripts to call the...
Read more >

github_iconTop Related Medium Post

No results found

github_iconTop Related StackOverflow Question

No results found

github_iconTroubleshoot Live Code

Lightrun enables developers to add logs, metrics and snapshots to live code - no restarts or redeploys required.
Start Free

github_iconTop Related Reddit Thread

No results found

github_iconTop Related Hackernoon Post

No results found

github_iconTop Related Tweet

No results found

github_iconTop Related Dev.to Post

No results found

github_iconTop Related Hashnode Post

No results found