1. 06 May, 2024 3 commits
  2. 09 Apr, 2024 1 commit
  3. 02 Apr, 2024 1 commit
  4. 28 Mar, 2024 2 commits
  5. 27 Mar, 2024 5 commits
  6. 26 Mar, 2024 2 commits
    • feat: make `numpy.h` compatible with both NumPy 1.x and 2.x (#5050) · 705efcce
      * API: Make `numpy.h` compatible with both NumPy 1.x and 2.x
      
      * TST: Update numpy dtype flags test to not covert flags to char
      
      * API: Add `numpy2.h` instead and make `numpy.h` safe
      
      This means that users of `numpy.h` cannot be broken, but need to
      update to `numpy2.h` if they want to compile for NumPy 2.
      
      Using Macros simply and didn't bother to try to remove unnecessary
      code paths.
      
      * API: Rather than `numpy2.h` use a define for the user.
      
      * Thread `PYBIND11_NUMPY2_SUPPORT` through things and try to adept test matrix
      
      * Small fixups (shouldn't matter)?
      
      * Fixup.  Does upgrading scipy help?  (it shouldn't?)
      
      (Some other small fixup)
      
      * Use NumPy 2 nightlies for ubuntu-latest job also
      
      * BUG: Fix numpy.bool check
      
      * TST: Fix complexwarning
      
      * BUG: Fix the fact that only the 50 slot is filled with the copy alias
      
      (There were 3 functions all doing the same, only this slot survived 2.x)
      
      * TST: One more test tweak
      
      * TST: Use "long" name for long, since it changed on windows
      
      * TST: Apparently we didn't always have ulong, so just use `L`
      
      * TST: Enforce dtype='l' for test as default isn't long anymore on windows
      
      * Rename macro and invert logic to PYBIND11_NUMPY_1_ONLY
      
      * PYBIND11_INTERNAL_NUMPY_1_ONLY_DETECTED
      
      * Test and code comment expansion
      
      * CI: Use pre-releases of numpy/scipy from pip via explicit version
      
      * CI: NumPy 2 only available on almalinux (as it is Python >=3.9)
      
      * MAINT: Match name more exactly and adopt error phrasing
      
      * MAINT: Pushed early, move helper to be private member
      
      * fix error message compilation when using NumPy 1.x-only backcompat
      
      * silence name shadowing warning
      
      * chore: minor optimization
      
      Signed-off-by: Henry Schreiner <henryschreineriii@gmail.com>
      
      ---------
      
      Signed-off-by: Henry Schreiner <henryschreineriii@gmail.com>
      Co-authored-by: Ralf W. Grosse-Kunstleve <rwgk@google.com>
      Co-authored-by: Henry Schreiner <henryschreineriii@gmail.com>
      Sebastian Berg committed
    • tests: hide warning on clang (#5069) · e0f2c715
      Signed-off-by: Henry Schreiner <henryschreineriii@gmail.com>
      Henry Schreiner committed
  7. 21 Mar, 2024 3 commits
  8. 14 Feb, 2024 1 commit
  9. 13 Feb, 2024 2 commits
  10. 06 Feb, 2024 1 commit
  11. 28 Jan, 2024 1 commit
    • doc: add litgen to the automatic generators list (compiling.rst) (#5012) · 768cebe1
      * doc: add litgen to the automatic generators list (compiling.rst)
      
      Added this:
      
      [litgen]_ is an automatic python bindings generator with a focus on generating
      documented and discoverable bindings: bindings will nicely reproduce the documentation
      found in headers. It is is based on srcML (srcml.org), a highly scalable, multi-language
      parsing tool with a developer centric approach. The API that you want to expose to python
      must be C++14 compatible (but your implementation can use more modern constructs).
      
      .. [litgen] https://pthom.github.io/litgen
      
      * style: pre-commit fixes
      
      ---------
      
      Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
      Pascal Thomet committed
  12. 17 Jan, 2024 1 commit
  13. 13 Jan, 2024 2 commits
  14. 08 Jan, 2024 1 commit
  15. 02 Jan, 2024 2 commits
  16. 30 Dec, 2023 1 commit
  17. 15 Dec, 2023 3 commits
  18. 14 Dec, 2023 2 commits
    • fix(cmake): upgrade maximum supported CMake version to 3.27 (#4786) · daea1130
      * Upgrade maximum supported CMake version to 3.27 to fix warning with CMP0148 policy (#4785)
      
      * Update `macos_brew_install_llvm` pipeline to use expected Python installation
      
      * Fix `Python_EXECUTABLE` Cmake variable typo
      
      * Apply suggestions from code review
      
      * fix: use FindPython for CMake 3.18+ by default for pybind11's tests
      
      Signed-off-by: Henry Schreiner <henryschreineriii@gmail.com>
      
      * tests: fix issues with finding Python
      
      Signed-off-by: Henry Schreiner <henryschreineriii@gmail.com>
      
      * tests: also set executable on subdir tests
      
      Signed-off-by: Henry Schreiner <henryschreineriii@gmail.com>
      
      * fix(cmake): correct logic for FindPython
      
      Signed-off-by: Henry Schreiner <henryschreineriii@gmail.com>
      
      * Update ci.yml
      
      * Revert "Update ci.yml"
      
      This reverts commit 33798adf3f3892ac4b78da8d3d91d3b27611bbe5.
      
      ---------
      
      Signed-off-by: Henry Schreiner <henryschreineriii@gmail.com>
      Co-authored-by: Henry Schreiner <HenrySchreinerIII@gmail.com>
      Pol Mesalles committed
    • fix: make_static_property_type() (#4971) · 7d538a42
      Update make_static_property_type() to make it compatible with Python
      3.13: set Py_TPFLAGS_MANAGED_DICT flag before calling PyType_Ready().
      Victor Stinner committed
  19. 07 Dec, 2023 1 commit
  20. 05 Dec, 2023 1 commit
  21. 29 Nov, 2023 1 commit
  22. 27 Nov, 2023 1 commit
  23. 16 Nov, 2023 2 commits
    • pybind11.pc: use pcfiledir for relative destinations (#4830) · dc9b3959
      * pybind11.pc: use pcfiledir for relative destinations
      
      If the datarootdir is absolute, just use the absolute path directly.
      However, if it is relative, we can compute the prefix from the location
      of the `.pc` file itself. This allows the install to be relocatable.
      
      * chore: use 3.20's cmake_path if available
      
      * style: pre-commit fixes
      
      * Update CMakeLists.txt
      
      ---------
      
      Co-authored-by: Henry Schreiner <HenrySchreinerIII@gmail.com>
      Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
      Ben Boeckel committed
    • fix(cmake): findpython issues and 3.12 support for pybind11_find_import (#4941) · 9591cfb0
      * fix(cmake): findpython issues and 3.12 support for pybind11_find_import
      
      Signed-off-by: Henry Schreiner <henryschreineriii@gmail.com>
      
      * Update pybind11NewTools.cmake
      
      ---------
      
      Signed-off-by: Henry Schreiner <henryschreineriii@gmail.com>
      Henry Schreiner committed