space-ros / docs

The Space ROS documentation site.
Creative Commons Attribution 4.0 International
8 stars 11 forks source link

Pin python libraries #23

Closed Bckempa closed 10 months ago

Bckempa commented 11 months ago

Use pinned requirements.txt and an additional constraints.txt file to ensure pip constructs a viable build environment. The upstream version (see [1]) partially depends on the distribution repositories for versioning via packages like python3-doc8 but I went though and pinned everything in the pip files instead to create a single source of truth independent of system packages.

Based on [1] by @clalancette upstream in ros2/ros2_documentation

Fixes #21

[1] https://github.com/ros2/ros2_documentation/pull/2725/commits/e43347d0413bef6801339894a8e63b2bd56e4c3a

Bckempa commented 11 months ago

I've tested this by building the doc site with both the repo's own dockerfile and an externally managed virtualenv using Python 3.10.13 on Ubuntu 22.04. It appears to fix both the library version resolution issue as well as the Sphinx runtime exception described in #21

ivanperez-keera commented 11 months ago

Thanks @Bckempa . I'll review this tomorrow in detail.

A couple of changes that I can already propose are:

```
Bckempa commented 11 months ago

Thanks for the reminder, should be fixed.

ivanperez-keera commented 10 months ago

I can confirm that this allows me to build the image correctly.