Skip to content

Moving rqt to pure python (#169) #170

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merged
merged 1 commit into from
Dec 11, 2018
Merged

Conversation

mlautman
Copy link
Member

@mlautman mlautman commented Dec 8, 2018

re-opening #169

@ghost ghost assigned mlautman Dec 8, 2018
@ghost ghost added the in progress label Dec 8, 2018
@ghost ghost assigned brawner Dec 10, 2018
@brawner
Copy link
Contributor

brawner commented Dec 10, 2018

@dirk-thomas Addressing your comments from #169 (comment)

The Python packages need to register themselves at the resource index as well as install their manifest file: see https://github.com/ros2/demos/blob/f2a1d9f5fe694a11fb42f3c036dacd130141ac0e/demo_nodes_py/setup.py#L10-L14 for an example.

Addressed

Also since the patch removed all CMake based linters the Python packages need linter tests instead: see https://github.com/ros2/demos/tree/f2a1d9f5fe694a11fb42f3c036dacd130141ac0e/demo_nodes_py/test

Test files were added to rqt_gui and rqt_gui_py

I haven't checked the entry points myself but it looks weird that they reference a main function in the rqt_gui.main module which doesn't exist - only a Main and a check for main?

A main function was added to main.py. I couldn't figure out how to get entry_points to call a script without a function as its entry point, nor could I figure out how to call the Main class method main.

def main():

The information in the setup.py files should match the existing information in the package.xml files: e.g. description, license, authors.

Addressed

@brawner brawner force-pushed the python_packages branch 2 times, most recently from 0a532eb to c94c0c8 Compare December 10, 2018 19:44
@dirk-thomas
Copy link
Contributor

dirk-thomas commented Dec 10, 2018

I don't know what the recommended approach for setuptools is but currently it only list a single author (see previous comment).

@brawner
Copy link
Contributor

brawner commented Dec 10, 2018

It looks like as many names and emails can be added in the author name field, email address field can only be one though.

@dirk-thomas
Copy link
Contributor

Also in ROS 1 rqt can be invoked without rosrun since it is on the PATH. That should be the same in ROS 2. Since there can be only a single install destination for scripts the rqt entry point should go to bin and the rqt_gui one can stay a script which is is installed without being an entry point.

[develop]
script-dir=$base/lib/rqt_gui
[install]
install-scripts=$base/lib/rqt_gui
Copy link
Contributor

@dirk-thomas dirk-thomas Dec 10, 2018

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This file should removed to place the rqt executable into bin.

@brawner
Copy link
Contributor

brawner commented Dec 11, 2018

Tested on windows, and it has the expected effects. rqt can be run directly as a command, but ros2 run rqt_gui rqt_gui fails

@brawner
Copy link
Contributor

brawner commented Dec 11, 2018

@dirk-thomas
Copy link
Contributor

@ros-pull-request-builder retest this please

@dirk-thomas dirk-thomas merged commit fd79414 into crystal-devel Dec 11, 2018
@ghost ghost removed the in progress label Dec 11, 2018
@dirk-thomas dirk-thomas deleted the python_packages branch December 11, 2018 22:48
('share/ament_index/resource_index/packages',
['resource/' + package_name]),
('share/' + package_name, ['package.xml']),
('share/' + package_name + '/resource/', ['plugin.xml'])
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

See #179.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants