1. 10 May, 2024 2 commits
  2. 06 May, 2024 5 commits
  3. 09 Apr, 2024 1 commit
  4. 02 Apr, 2024 1 commit
  5. 28 Mar, 2024 2 commits
  6. 27 Mar, 2024 5 commits
  7. 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
  8. 21 Mar, 2024 3 commits
  9. 14 Feb, 2024 1 commit
  10. 13 Feb, 2024 2 commits
  11. 06 Feb, 2024 1 commit
  12. 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
  13. 17 Jan, 2024 1 commit
  14. 13 Jan, 2024 2 commits
  15. 08 Jan, 2024 1 commit
  16. 02 Jan, 2024 2 commits
  17. 30 Dec, 2023 1 commit
  18. 15 Dec, 2023 3 commits
  19. 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
  20. 07 Dec, 2023 1 commit
  21. 05 Dec, 2023 1 commit