1. Sep 09, 2021
    • Ralf W. Grosse-Kunstleve's avatar
      94a5c673
    • Ralf W. Grosse-Kunstleve's avatar
      CodeHealth: Enabling clang-tidy google-explicit-constructor (#3250) · 6abf2baa
      Ralf W. Grosse-Kunstleve authored
      * Adding google-explicit-constructor to .clang-tidy
      
      * clang-tidy explicit attr.h (all automatic)
      
      * clang-tidy explicit cast.h (all automatic)
      
      * clang-tidy detail/init.h (1 NOLINT)
      
      * clang-tidy detail/type_caster_base.h (2 NOLINT)
      
      * clang-tidy pybind11.h (7 NOLINT)
      
      * clang-tidy detail/common.h (3 NOLINT)
      
      * clang-tidy detail/descr.h (2 NOLINT)
      
      * clang-tidy pytypes.h (23 NOLINT, only 1 explicit)
      
      * clang-tidy eigen.h (7 NOLINT, 0 explicit)
      
      * Adding 2 explicit in functional.h
      
      * Adding 4 explicit in iostream.h
      
      * clang-tidy numpy.h (1 NOLINT, 1 explicit)
      
      * clang-tidy embed.h (0 NOLINT, 1 explicit)
      
      * clang-tidy tests/local_bindings.h (0 NOLINT, 4 explicit)
      
      * clang-tidy tests/pybind11_cross_module_tests.cpp (0 NOLINT, 1 explicit)
      
      * clang-tidy tests/pybind11_tests.h (0 NOLINT, 2 explicit)
      
      * clang-tidy tests/test_buffers.cpp (0 NOLINT, 2 explicit)
      
      * clang-tidy tests/test_builtin_casters.cpp (0 NOLINT, 4 explicit)
      
      * clang-tidy tests/test_class.cpp (0 NOLINT, 6 explicit)
      
      * clang-tidy tests/test_copy_move.cpp (0 NOLINT, 7 explicit)
      
      * clang-tidy tests/test_embed/external_module.cpp (0 NOLINT, 1 explicit)
      
      * clang-tidy tests/test_embed/test_interpreter.cpp (0 NOLINT, 1 explicit)
      
      * clang-tidy tests/object.h (0 NOLINT, 2 explicit)
      
      * clang-tidy batch of fully automatic fixes.
      
      * Workaround for MSVC 19.16.27045.0 C++17 Python 2 C++ syntax error.
      6abf2baa
    • Thomas Ballinger's avatar
      39a0aac8
  2. Sep 03, 2021
  3. Aug 31, 2021
  4. Aug 29, 2021
    • Ralf W. Grosse-Kunstleve's avatar
      f33da183
    • Ralf W. Grosse-Kunstleve's avatar
      Adding `ssize_t_cast` to support passing `size_t` or `ssize_t` values where... · 777352fc
      Ralf W. Grosse-Kunstleve authored
      Adding `ssize_t_cast` to support passing `size_t` or `ssize_t` values where `ssize_t` is needed. (#3219)
      
      * Trivial change to avoid (ssize_t) cast.
      
      * Demo for safe_ssize_t idea.
      
      * Removing safe_ssize_t.cpp (proof-of-concept code) to not upset the GHA Format workflow.
      
      * Completing changes in pytypes.h
      
      * New ssize_t_cast (better replacement for safe_ssize_t).
      
      * clang-format-diff (no manual changes).
      
      * bytes_ssize_t -Wnarrowing reproducer (see PR #2692).
      
      * Backing out tuple(), list() ssize_t support, for compatibility with older compilers (to resolve link failures).
      
      * Bug fix: missing `py::` for `py::ssize_t`
      
      * Restoring tuple(), list() ssize_t support, but passing `size` by value, for compatibility with older compilers (to resolve link failures).
      
      * Full test coverage of all functions with modified signatures.
      777352fc
  5. Aug 27, 2021
  6. Aug 26, 2021
  7. Aug 24, 2021
  8. Aug 20, 2021
  9. Aug 18, 2021
    • Ralf W. Grosse-Kunstleve's avatar
      Removing obsolete eigen.h warning suppression pragmas. (#3198) · 774b5ff9
      Ralf W. Grosse-Kunstleve authored
      * Removing all pragma from eigen.h
      
      * Removing -Werror or equivalent from tests/CMakeLists.txt
      
      * Restoring tests/CMakeLists.txt from master.
      
      * Adding 4 PYBIND11_SILENCE_MSVC_C4127.
      
      * Compatibility with -Wconversion, -Wdeprecated
      
      * Introducing PYBIND11_COMPATIBILITY_WDEPRECATED_COPY
      
      * Systematically using --verbose for compilations where possible (cmake 3.14 or newer).
      
      Also changing all `cmake -t` to `--target`, `-v` to `--verbose`, `check` to `pytest`, for consistency (to make it easier to pin-point all commands of a certain type).
      
      Also removing one `-j 2` for `pytest` in hopes of reducing flakes due to races in test_iostream and in prints from destructors.
      
      * Commenting out pragmas as an experiment to reproduce previous observation.
      
      * Removing all (newly added, but already commented-out) pragma code, adding HINT use -isystem (as cmake does).
      
      * Restoring ci.yml from master. Those changes are better handled separately. BTW: in the last CI run there was still a test_iostream flake, even without the -j 2 for running the tests (verfied by inspecting the log).
      774b5ff9
  10. Aug 15, 2021
  11. Aug 14, 2021
  12. Aug 13, 2021
  13. Aug 10, 2021
    • pre-commit-ci[bot]'s avatar
      0be2ea06
    • Ralf W. Grosse-Kunstleve's avatar
      PYBIND11_NOINLINE-related cleanup. (#3179) · 4c7e509f
      Ralf W. Grosse-Kunstleve authored
      * Removing pragma for GCC -Wattributes, fixing forward declarations.
      
      * Introducing PYBIND11_NOINLINE_FWD to deal with CUDA, GCC7, GCC8.
      
      * Updating PYBIND11_NOINLINE_DCL in Doxyfile.
      
      * Trying noinline, noinline for {CUDA, GCC7, GCC8}
      
      * Trying noinline, inline for {CUDA, GCC7, GCC8}
      
      * Adding GCC -Wattributes `pragma` in 3 header files.
      
      * Introducing PYBIND11_NOINLINE_GCC_PRAGMA_ATTRIBUTES_NEEDED, used in 9 header files.
      
      * Removing ICC pragma 2196, to see if it is still needed.
      
      * Trying noinline, noinline for ICC
      
      * Trying noinline, inline for ICC
      
      * Restoring ICC pragma 2196, introducing PYBIND11_NOINLINE_FORCED, defined for testing.
      
      * Removing code accidentally left in (was for experimentation only).
      
      * Removing one-time-test define.
      
      * Removing PYBIND11_NOINLINE_FWD macro (after learning that it makes no sense).
      
      * Testing with PYBIND11_NOINLINE_DISABLED. Minor non-functional enhancements.
      
      * Removing #define PYBIND11_NOINLINE_DISABLED (test was successful).
      
      * Removing PYBIND11_NOINLINE_FORCED and enhancing comments for PYBIND11_NOINLINE.
      
      * WIP stripping back
      
      * Making -Wattributes pragma in pybind11 specific to GCC7, GCC8, CUDA.
      4c7e509f