machinekit / machinekit-hal

Universal framework for machine control based on Hardware Abstraction Layer principle
https://www.machinekit.io
Other
109 stars 63 forks source link

Addition of ubuntu Jammy 22.04 #383

Closed the-snowwhite closed 1 year ago

the-snowwhite commented 1 year ago

I managed to get everything to build and pass tests execpt the halmodule.0 test. Due to a change between Python3 v3.9 and v3.10 inferance of ints have changed. Floats are no longer automaticially converted to ints but give an typedef error instead. This gives the following difference in expected output file for only Jammy(with py version 3.10): @cerna are you still available ? Greetings

    diff --git a/tests/runtests/halmodule.0/expected b/tests/runtests/halmodule.0/expected
index 99d1937c5..58300218c 100644
--- a/tests/runtests/halmodule.0/expected
+++ b/tests/runtests/halmodule.0/expected
@@ -4,13 +4,13 @@ set HAL_S32 0 ok
set HAL_S32 1 ok
set HAL_S32 2147483647 ok
set HAL_S32 -2147483648 ok
-set HAL_S32 100000.0 ok
-set HAL_S32 99.99 99
+set HAL_S32 100000.0 TypeError: 'float' object cannot be interpreted as an integer
+set HAL_S32 99.99 TypeError: 'float' object cannot be interpreted as an integer
set HAL_S32 True ok
S32 fail
set HAL_S32 2147483648 OverflowError: Python int too large to convert to C long
set HAL_S32 -2147483649 OverflowError: Python int too large to convert to C long
-set HAL_S32 1.98225e+50 OverflowError: Python int too large to convert to C long
+set HAL_S32 1.98225e+50 TypeError: 'float' object cannot be interpreted as an integer
set HAL_S32 foo TypeError: Failed to convert str('foo') to int type
set HAL_S32 None TypeError: Failed to convert NoneType(None) to int type
U32 pass
@@ -32,8 +32,8 @@ set HAL_S64 0 ok
set HAL_S64 1 ok
set HAL_S64 9223372036854775807 ok
set HAL_S64 -9223372036854775808 ok
-set HAL_S64 1000000000000000.0 ok
-set HAL_S64 99.99 99
+set HAL_S64 1000000000000000.0 TypeError: 'float' object cannot be interpreted as an integer
+set HAL_S64 99.99 TypeError: 'float' object cannot be interpreted as an integer
set HAL_S64 True ok
S64 fail
set HAL_S64 9223372036854775808 OverflowError: int too big to convert

https://github.com/machinekit/machinekit-hal/issues/384

the-snowwhite commented 1 year ago

Also I do not know how to twart this intermediant docker error except by re-running the failed jobs:

    Step 22/39 : RUN curl -1vLf                                                                                                          $(curl -s https://api.github.com/repos/kitware/cmake/releases/latest |                                                  jq -r --arg FILE "cmake-\d{1,}\.\d{1,}\.\d{1,}(-.{1,})?-linux-$(dpkg-architecture -qDEB_BUILD_GNU_CPU)\.sh"         '.assets | .[] | select(.name? | match($FILE)) | .browser_download_url')                                            --output /tmp/cmake.sh &&                                                                                       bash /tmp/cmake.sh --skip-license --prefix=/usr/local
---> Running in ca45e76ee5ca
jq: error (at <stdin>:1): Cannot iterate over null (null)
curl: no URL specified!
curl: try 'curl --help' or 'curl --manual' for more information
The command 'bash -c curl -1vLf                                                                                                          $(curl -s https://api.github.com/repos/kitware/cmake/releases/latest |                                                  jq -r --arg FILE "cmake-\d{1,}\.\d{1,}\.\d{1,}(-.{1,})?-linux-$(dpkg-architecture -qDEB_BUILD_GNU_CPU)\.sh"         '.assets | .[] | select(.name? | match($FILE)) | .browser_download_url')                                            --output /tmp/cmake.sh &&                                                                                       bash /tmp/cmake.sh --skip-license --prefix=/usr/local' returned a non-zero code: 2
Docker args: docker build --build-arg DEBIAN_DISTRO_BASE=ubuntu:bionic --build-arg HOST_ARCHITECTURE=armhf --label io.machinekit.machinekit-hal.name=docker.pkg.github.com/machinekit/machinekit-hal/machinekit-hal-ubuntu-builder-v.armhf_18.04 --label io.machinekit.machinekit-hal.maintainer=Michael Brown <the-snowwhite@users.noreply.github.com> --label io.machinekit.machinekit-hal.description=Machinekit-HAL Ubuntu Bionic Docker image for armhf architecture. --label io.machinekit.machinekit-hal.build-date= % Y-12-25T % H: % M: % SZ --label io.machinekit.machinekit-hal.vcs-ref=f9ae9719a1316134b895164009feecb944260439 --label io.machinekit.machinekit-hal.vcs-branch=HEAD --label io.machinekit.machinekit-hal.vcs-url=https://github.com/machinekit/machinekit-hal --file /home/runner/work/machinekit-hal/machinekit-hal/build/machinekit-hal/debian/buildsystem/Dockerfile --tag docker.pkg.github.com/machinekit/machinekit-hal/machinekit-hal-ubuntu-builder-v.armhf_18.04:latest
Traceback (most recent call last):
File "debian/buildcontainerimage.py", line 244, in <module>
    main(args)
File "debian/buildcontainerimage.py", line 176, in main
    buildcontainerimage_script.build_docker_image(
File "debian/buildcontainerimage.py", line 155, in build_docker_image
    docker_build(*argument_list,
File "/opt/hostedtoolcache/Python/3.8.15/x64/lib/python3.8/site-packages/sh.py", line 1511, in __call__
    raise exc
sh.ErrorReturnCode_2: 

RAN: /usr/bin/docker build --build-arg DEBIAN_DISTRO_BASE=ubuntu:bionic --build-arg HOST_ARCHITECTURE=armhf --label io.machinekit.machinekit-hal.name=docker.pkg.github.com/machinekit/machinekit-hal/machinekit-hal-ubuntu-builder-v.armhf_18.04 --label io.machinekit.machinekit-hal.maintainer=Michael Brown <the-snowwhite@users.noreply.github.com> --label io.machinekit.machinekit-hal.description=Machinekit-HAL Ubuntu Bionic Docker image for armhf architecture. --label io.machinekit.machinekit-hal.build-date= % Y-12-25T % H: % M: % SZ --label io.machinekit.machinekit-hal.vcs-ref=f9ae9719a1316134b895164009feecb944260439 --label io.machinekit.machinekit-hal.vcs-branch=HEAD --label io.machinekit.machinekit-hal.vcs-url=https://github.com/machinekit/machinekit-hal --file /home/runner/work/machinekit-hal/machinekit-hal/build/machinekit-hal/debian/buildsystem/Dockerfile --tag docker.pkg.github.com/machinekit/machinekit-hal/machinekit-hal-ubuntu-builder-v.armhf_18.04:latest /home/runner/work/machinekit-hal/machinekit-hal/build/machinekit-hal

STDOUT:

STDERR:

Error: Process completed with exit code 1.