FogROS2 icon indicating copy to clipboard operation
FogROS2 copied to clipboard

build: switch to poetry, add development dependencies

Open nikhiljha opened this issue 3 years ago • 2 comments

This PR includes a number of small changes.

  • Switch to the poetry package manager.
    • poetry is a modern python package manager, taking advantage of the standardized pyproject.toml configuration format
    • ⚠️ This requires a colcon plugin that isn't in the default ubuntu install. I don't know if ROS likes this, and if they don't I'll either need to get the plugin upstreamed (😢) or figure out some other clever solution.
    • dependencies are now pinned and locked with hashes (before, the latest version was always pulled via an unversioned requirements.txt, which means fogros2 could just break all of a sudden and we’d have to scramble to fix it)
  • Add code formatting tools (black, isort, flake8)
  • Add mypy to check types
    • safety!

nikhiljha avatar Jun 12 '22 00:06 nikhiljha

I should probably just render it out as a setup.py... https://github.com/python-poetry/poetry/issues/761#issuecomment-521124268 😢

nikhiljha avatar Jun 12 '22 00:06 nikhiljha

Note: to test this PR, you need https://discourse.ros.org/t/use-poetry-in-your-ros2-packages-with-colcon-poetry-ros/25096 installed atm

nikhiljha avatar Jun 24 '22 01:06 nikhiljha