Skip to content
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

Fix & update CI #243

Merged
merged 6 commits into from
Feb 4, 2025
Merged

Fix & update CI #243

merged 6 commits into from
Feb 4, 2025

Conversation

nim65s
Copy link
Contributor

@nim65s nim65s commented Jan 31, 2025

Hi,

Thanks for this project !

I wanted to work on Boost.Python support, and #57 shows that tests were missing. So I started to work on adding tests for that use case. But the CI on the current master currently fails, so in this PR I'm not working Boost Python, only updating the CI.

1st commit

I updated the python versions, because github actions has been upgraded to ubuntu 24.04, and python 3.7 is no longer available. While here, I told the CI to also test Python 3.13, now that is available

This fix failing CI run: https://github.com/nim65s/pybind11-stubgen/actions/runs/13078073831/job/36495024959

2nd commit

I enabled python 3.13 tests with a simple symlink.

This fixed failing CI run: https://github.com/nim65s/pybind11-stubgen/actions/runs/13077365254/job/36492732365

3rd commit

Cloning and building eigen fails, so I installed a prebuilt version instead, with the "cmeel-eigen" pip package. I'm the maintainer of that package, because I need eigen in many projects that I distribute on PyPI.

This fixed failing CI run: https://github.com/nim65s/pybind11-stubgen/actions/runs/13077365254/job/36492732892

NB: to add boost tests, downloading and building boost would take a huge amount of work and resources, so was thinking to use the "cmeel-boost" pre-built package instead. That's why I think adding a dependency on "cmeel-eigen" is cheap. But obviously, as the author of those monstrosities, I am biased.

4th commit

To use cmeel packages to build things with CMake, we need to export CMAKE_PREFIX_PATH=$(cmeel cmake).

This could probably be squashed into the previous commit.

5th commit

Pybind11 now seems to add a _pybind11_conduit_v1_ static method everywhere, so I guess we should exclude that

This fixed failing CI run: https://github.com/nim65s/pybind11-stubgen/actions/runs/13077753258/job/36493969392

6th commit

Python 3.13 added 2 new dunder attributes: __firstlineno__ & __static_attributes__, so I also excluded those.

This fixed failing CI run: https://github.com/nim65s/pybind11-stubgen/actions/runs/13077823166/job/36494187798

as python 3.13 is available, and python 3.7 no longer available in
github actions
to fix CI:
```cmake
CMake Error at tmp/pybind11-master/build/eigen/blas/cmake_install.cmake:46 (file):
  file INSTALL cannot find
  "/home/runner/work/pybind11-stubgen/pybind11-stubgen/tmp/pybind11-master/build/eigen/blas/libeigen_blas_static.a":
  No such file or directory.
Call Stack (most recent call first):
  tmp/pybind11-master/build/eigen/cmake_install.cmake:87 (include)
```
@ax3l ax3l mentioned this pull request Feb 3, 2025
@sizmailov sizmailov enabled auto-merge (squash) February 4, 2025 00:26
@sizmailov sizmailov merged commit 198a75a into sizmailov:master Feb 4, 2025
17 checks passed
@sizmailov
Copy link
Owner

Thanks!

I'm fine with convenient dev-dependencies. I totally understand the burden that comes with eigen.

@nim65s nim65s deleted the ci branch February 4, 2025 13:11
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.

2 participants