gazebo-release / gz-math6-release

0 stars 0 forks source link

Remove python package from Bionic #8

Closed chapulina closed 2 years ago

chapulina commented 2 years ago

Bionic has an old version of pybind11 2.0.1, which isn't enough for our needs. Since the python packages are new and experimental, we're removing them from Bionic and targeting Focal onwards.

Buster has pybind11 2.2.4, so I expect it to work there.

The only difference between the Bionic control file and the rest is the lack of the python package:

$ diff -u ubuntu/debian/control bionic/debian/control 
--- ubuntu/debian/control   2022-01-13 14:31:44.061344295 -0800
+++ bionic/debian/control   2022-01-21 11:04:15.370993159 -0800
@@ -67,22 +67,6 @@
  encapsulate all the essentials, such as common math data types, console
  logging, 3D mesh management, and asynchronous message passing.

-Package: python3-ignition-math6
-Architecture: any
-Depends: ${misc:Depends},
-         python3-distutils,
-         python3-pybind11,
-         ${python3:Depends}
-Enhances: libignition-math6
-Description: Ignition Robotics Math Library - Python3 bindings
- A small, fast, and high performance math library. This library is a
- self-contained set of classes and functions suitable for robot applications.
- .
- Ignition Robotics is a set of simple libraries that provide useful
- functionality to bootstrap robot applications. The included libraries
- encapsulate all the essentials, such as common math data types, console
- logging, 3D mesh management, and asynchronous message passing.
-
 Package: ruby-ignition-math6
 Architecture: any
 XB-Ruby-Versions: ${ruby:Versions}

Test build: Build Status

chapulina commented 2 years ago

So I don't know why python is a dependency of ign-math, but it's been there since at least ign-math4:

https://github.com/ignition-release/ign-math4-release/blob/main/ubuntu/debian/control

That's why I didn't remove it

chapulina commented 2 years ago

don't need python3-dev

Oh I see you were talking specifically about the -dev package. That one does seem to be new since #6, so let me remove that

chapulina commented 2 years ago

New diff:

$ diff -u ubuntu/debian/control bionic/debian/control 
--- ubuntu/debian/control   2022-01-13 14:31:44.061344295 -0800
+++ bionic/debian/control   2022-01-21 11:18:41.280519429 -0800
@@ -5,12 +5,10 @@
 Priority: extra
 Build-Depends: cmake,
                debhelper (>= 11),
-               dh-python,
                doxygen,
                libeigen3-dev,
                libignition-cmake2-dev,
                python3,
-               python3-dev,
                ruby-dev,
                ruby-ronn,
                swig
@@ -62,22 +60,6 @@
  A small, fast, and high performance math library. This library is a
  self-contained set of classes and functions suitable for robot applications.
  .
- Ignition Robotics is a set of simple libraries that provide useful
- functionality to bootstrap robot applications. The included libraries
- encapsulate all the essentials, such as common math data types, console
- logging, 3D mesh management, and asynchronous message passing.
-
-Package: python3-ignition-math6
-Architecture: any
-Depends: ${misc:Depends},
-         python3-distutils,
-         python3-pybind11,
-         ${python3:Depends}
-Enhances: libignition-math6
-Description: Ignition Robotics Math Library - Python3 bindings
- A small, fast, and high performance math library. This library is a
- self-contained set of classes and functions suitable for robot applications.
- .
  Ignition Robotics is a set of simple libraries that provide useful
  functionality to bootstrap robot applications. The included libraries
  encapsulate all the essentials, such as common math data types, console
chapulina commented 2 years ago

New test build: Build Status

chapulina commented 2 years ago

That didn't work

dh: unable to load addon python3: Can't locate Debian/Debhelper/Sequence/python3.pm in @INC (you may need to install the Debian::Debhelper::Sequence::python3 module) (@INC contains: /etc/perl /usr/local/lib/x86_64-linux-gnu/perl/5.26.1 /usr/local/share/perl/5.26.1 /usr/lib/x86_64-linux-gnu/perl5/5.26 /usr/share/perl5 /usr/lib/x86_64-linux-gnu/perl/5.26 /usr/share/perl/5.26 /usr/local/lib/site_perl /usr/lib/x86_64-linux-gnu/perl-base) at (eval 2) line 1.
BEGIN failed--compilation aborted at (eval 2) line 1.

debian/rules:13: recipe for target 'clean' failed
make: *** [clean] Error 2
dpkg-buildpackage: error: fakeroot debian/rules clean subprocess returned exit status 2
chapulina commented 2 years ago

New diff

$ diff -u ubuntu/debian/control bionic/debian/control 
--- ubuntu/debian/control   2022-01-21 11:26:59.432011011 -0800
+++ bionic/debian/control   2022-01-21 11:27:15.304247404 -0800
@@ -5,12 +5,10 @@
 Priority: extra
 Build-Depends: cmake,
                debhelper (>= 11),
-               dh-python,
                doxygen,
                libeigen3-dev,
                libignition-cmake2-dev,
                python3,
-               python3-dev,
                ruby-dev,
                ruby-ronn,
                swig
@@ -18,7 +16,6 @@
 Vcs-Hg: https://bitbucket.org/ignitionrobotics/ign_math-release
 Homepage: https://bitbucket.org/ignitionrobotics/ign_math
 XS-Ruby-Versions: all
-X-Python3-Version: >= 3.2

 Package: libignition-math6
 Architecture: any
@@ -62,22 +59,6 @@
  A small, fast, and high performance math library. This library is a
  self-contained set of classes and functions suitable for robot applications.
  .
- Ignition Robotics is a set of simple libraries that provide useful
- functionality to bootstrap robot applications. The included libraries
- encapsulate all the essentials, such as common math data types, console
- logging, 3D mesh management, and asynchronous message passing.
-
-Package: python3-ignition-math6
-Architecture: any
-Depends: ${misc:Depends},
-         python3-distutils,
-         python3-pybind11,
-         ${python3:Depends}
-Enhances: libignition-math6
-Description: Ignition Robotics Math Library - Python3 bindings
- A small, fast, and high performance math library. This library is a
- self-contained set of classes and functions suitable for robot applications.
- .
  Ignition Robotics is a set of simple libraries that provide useful
  functionality to bootstrap robot applications. The included libraries
  encapsulate all the essentials, such as common math data types, console

New build Build Status

j-rivero commented 2 years ago

New build

Ops sorry my bad. We need changes to rules file too. I removed the use of the common file in 0be24c3 and adapted the rules file by removing the python mechanisms.

Build Status

chapulina commented 2 years ago

Thanks, @j-rivero !