[ros-users] [Discourse.ros.org] [Next Generation ROS] Questi…

Top Page
Attachments:
Message as email
+ (text/plain)
Delete this message
Reply to this message
Author: Alexander Rössler via ros-users
Date:  
To: ros-users
CC: Alexander Rössler
Subject: [ros-users] [Discourse.ros.org] [Next Generation ROS] Questioning the .launch.py file extension


@wjwwood Presented the new Python-based launch files at ROSCon.

I really like the idea of using Python as a configuration/launcher language. In fact, we have also done this in the [Machinekit](http://machinekit.io) project for both configuration and launch files.

However, what I want to question is the `.launch.py` file extension.

Why? Python forbids adding dots in the name of a module (see https://www.python.org/dev/peps/pep-0008/#package-and-module-names). Therefore, it isn't possible to use files with extra dots in the name as if they are Python modules.

Of course, our launch file is not a Python module per default. However, it's very likely that the launch files will be used to build modular setups. Therefore, the launch file should be treated as a normal Python module.

As a software engineer, I want to be able to test my code, this includes launch files. But it turns out quickly that this is a lot harder to do when a module can't be imported the "normal" way via `import`. Other Python development tools might choke (or throw warnings) as well on the non-standard file extension.

One workaround is to use `importlib`. But I argue that this adds unnecessary complexity to the setup.

Therefore, I would like to propose to use a different method for identifying launch Python files such as for example using `_launch.py` in the name.





---
[Visit Topic](https://discourse.ros.org/t/questioning-the-launch-py-file-extension/6352/1) or reply to this email to respond.


If you do not want to receive messages from ros-users please use the unsubscribe link below. If you use the one above, you will stop all of ros-users from receiving updates.
______________________________________________________________________________
ros-users mailing list

http://lists.ros.org/mailman/listinfo/ros-users
Unsubscribe: <http://lists.ros.org/mailman//options/ros-users>